
/* WARNING: Unknown calling convention -- yet parameter storage is locked */
/* WARNING: Enum "anon_enum_32": Some values do not have unique names */

void output_insn(void)

{
  frag *pfVar1;
  bfd_reloc_code_real other;
  reg_entry *prVar2;
  fragS *pfVar3;
  uchar uVar4;
  bfd_boolean bVar5;
  bfd_reloc_code_real_type bVar6;
  addressT aVar7;
  char *pcVar8;
  symbolS *symbol;
  char *pcVar9;
  fixS *pfVar10;
  ulong uVar11;
  valueT vVar12;
  uchar *puVar13;
  expressionS *peVar14;
  expressionS *peVar15;
  byte bVar16;
  byte bVar17;
  long lVar18;
  uint uVar19;
  long lVar20;
  uchar *puVar21;
  uint uVar22;
  int iVar23;
  char cVar24;
  size_t sVar25;
  fragS *pfVar26;
  offsetT offset;
  uint uVar27;
  uint uVar28;
  ulong uVar29;
  bool bVar30;
  uint local_58;
  
  dwarf2_emit_insn(0);
  pfVar3 = frag_now;
  aVar7 = frag_now_fix();
  other = i.reloc[0];
  if ((i.tm.opcode_modifier._0_1_ & 0x20) != 0) {
    uVar19 = (uint)(i.disp_encoding == Cpu386) * 2;
    if (i.prefix[3] != '\0') {
      uVar28 = 2;
      i.prefixes = i.prefixes - 1;
      bVar30 = flag_code != CODE_16BIT;
    }
    else {
      bVar30 = flag_code == CODE_16BIT;
      uVar28 = 1;
    }
    uVar27 = uVar28;
    uVar22 = (uint)(i.prefix[3] != '\0');
    if ((i.prefix[1] & 0xef) == 0x2e) {
      i.prefixes = i.prefixes - 1;
      uVar27 = uVar28 + 1;
      uVar22 = uVar28;
    }
    uVar28 = uVar27;
    if (i.prefix[6] != '\0') {
      i.prefixes = i.prefixes - 1;
      uVar28 = uVar27 + 1;
      uVar22 = uVar27;
    }
    if (i.prefix[4] != '\0') {
      frag_append_1_char((uint)i.prefix[4]);
      i.prefixes = i.prefixes - 1;
    }
    if ((i.prefixes != 0) && (intel_syntax == 0)) {
      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);
      as_warn(pcVar9);
    }
    frag_grow((long)(int)(uVar22 + 6));
    puVar21 = (uchar *)frag_more((long)(int)uVar28);
    if (i.prefix[3] != '\0') {
      *puVar21 = 'f';
      puVar21 = puVar21 + 1;
    }
    if ((i.prefix[1] & 0xef) == 0x2e) {
      *puVar21 = i.prefix[1];
      puVar21 = puVar21 + 1;
    }
    if (i.prefix[6] != '\0') {
      *puVar21 = i.prefix[6];
      puVar21 = puVar21 + 1;
    }
    uVar4 = (uchar)i.tm.base_opcode;
    *puVar21 = uVar4;
    uVar28 = uVar19;
    if (uVar4 != 0xeb) {
      uVar28 = uVar19 | 8;
      if ((cpu_arch_flags.array[0]._0_1_ & 4) != 0) {
        uVar28 = uVar19 | 4;
      }
    }
    if ((byte)((i.op[0].disps)->field_0x18 - 2) < 2) {
      symbol = (i.op[0].disps)->X_add_symbol;
      offset = (i.op[0].disps)->X_add_number;
    }
    else {
      symbol = make_expr_symbol(i.op[0].disps);
      offset = 0;
    }
    frag_var(rs_machine_dependent,5,(ulong)i.reloc[0],uVar28 | bVar30,symbol,offset,(char *)puVar21)
    ;
    return;
  }
  if ((i.tm.opcode_modifier._0_1_ & 0xc0) != 0) {
    if ((char)i.tm.opcode_modifier._0_1_ < '\0') {
      if (i.prefix[2] != '\0') {
        frag_append_1_char(0x67);
        i.prefixes = i.prefixes - 1;
      }
      uVar19 = 1;
      if ((i.prefix[1] & 0xef) == 0x2e) {
        frag_append_1_char((uint)i.prefix[1]);
        i.prefixes = i.prefixes - 1;
      }
    }
    else {
      if (flag_code == CODE_16BIT) {
        if (i.prefix[3] == '\0') {
          uVar19 = 2;
          goto LAB_00137acf;
        }
        frag_append_1_char(0x66);
        i.prefixes = i.prefixes - 1;
      }
      else if (i.prefix[3] != '\0') {
        uVar19 = 2;
        frag_append_1_char(0x66);
        i.prefixes = i.prefixes - 1;
        goto LAB_00137acf;
      }
      uVar19 = 4;
    }
LAB_00137acf:
    if (i.prefix[6] != '\0') {
      frag_append_1_char((uint)i.prefix[6]);
      i.prefixes = i.prefixes - 1;
    }
    if (i.prefix[4] != '\0') {
      frag_append_1_char((uint)i.prefix[4]);
      i.prefixes = i.prefixes - 1;
    }
    if ((i.prefixes != 0) && (intel_syntax == 0)) {
      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);
      as_warn(pcVar9);
    }
    pcVar8 = frag_more((long)(int)(i.tm.opcode_length + uVar19));
    pcVar9 = pcVar8;
    if (i.tm.opcode_length != '\x01') {
      if (i.tm.opcode_length != '\x02') {
                    /* WARNING: Subroutine does not return */
        as_abort("../../gas/config/tc-i386.c",0x1d62,"output_jump");
      }
      pcVar9 = pcVar8 + 1;
      *pcVar8 = (char)(i.tm.base_opcode >> 8);
    }
    iVar23 = (int)pcVar9 + 1;
    *pcVar9 = (char)i.tm.base_opcode;
    if ((uVar19 == 4) && (other == BFD_RELOC_NONE)) {
      bVar5 = need_plt32_p((i.op[0].disps)->X_add_symbol);
      bVar6 = reloc(4,1,1,(-(uint)(bVar5 == 0) & 0xfffffec9) + BFD_RELOC_X86_64_PLT32);
      fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),4,i.op[0].disps,1,bVar6);
      return;
    }
    bVar6 = reloc(uVar19,1,1,other);
    pfVar10 = fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),uVar19,i.op[0].disps,1,bVar6);
    if (uVar19 != 1) {
      return;
    }
    *(byte *)pfVar10 = *(byte *)pfVar10 | 0x80;
    return;
  }
  if ((i.tm.opcode_modifier._1_1_ & 1) != 0) {
    if (i.prefix[3] != '\0') {
      i.prefixes = i.prefixes - 1;
      bVar30 = flag_code != CODE_16BIT;
    }
    else {
      bVar30 = flag_code == CODE_16BIT;
    }
    uVar19 = (uint)(i.prefix[3] != '\0');
    if (i.prefix[6] != '\0') {
      i.prefixes = i.prefixes - 1;
      uVar19 = uVar19 + 1;
    }
    uVar28 = (-(uint)!bVar30 & 2) + 2;
    if ((i.prefixes != 0) && (intel_syntax == 0)) {
      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);
      as_warn(pcVar9);
    }
    puVar21 = (uchar *)frag_more((long)(int)(uVar19 + 3 + uVar28));
    if (i.prefix[3] != '\0') {
      *puVar21 = 'f';
      puVar21 = puVar21 + 1;
    }
    puVar13 = puVar21 + 1;
    if (i.prefix[6] != '\0') {
      *puVar21 = i.prefix[6];
      puVar13 = puVar21 + 2;
      puVar21 = puVar21 + 1;
    }
    *puVar21 = (uchar)i.tm.base_opcode;
    if ((i.op[1].disps)->field_0x18 == '\x02') {
      uVar29 = (i.op[1].disps)->X_add_number;
      if (((uVar28 == 2) && (0xffff < uVar29)) && (0xffff < uVar29 + 0x8000)) {
        pcVar9 = (char *)dcgettext(0,"16-bit jump out of range",5);
        as_bad(pcVar9);
        return;
      }
      number_to_chars_littleendian((char *)puVar13,uVar29,uVar28);
    }
    else {
      bVar6 = reloc(uVar28,0,0,i.reloc[1]);
      fix_new_exp(frag_now,(int)puVar13 - ((int)frag_now + 0x80),uVar28,i.op[1].disps,0,bVar6);
    }
    pcVar9 = i.tm.name;
    if ((i.op[0].disps)->field_0x18 != '\x02') {
      pcVar8 = (char *)dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);
      as_bad(pcVar8,pcVar9);
    }
    vVar12 = (i.op[0].disps)->X_add_number;
    iVar23 = 2;
    puVar13 = puVar13 + (int)uVar28;
LAB_0013817e:
    number_to_chars_littleendian((char *)puVar13,vVar12,iVar23);
    return;
  }
  if ((avoid_fence == 0) || (i.tm.base_opcode != 0xfae)) {
    if (omit_lock_prefix != 0) {
      if (i.tm.base_opcode == 0xf0) {
        return;
      }
LAB_00137bee:
      i.prefix[5] = '\0';
    }
  }
  else {
    if (((i.operands == 1) && (i.imm_operands == 1)) &&
       ((((i.op[0].disps)->X_add_number & 0xffffffffffffffefU) == 0xe8 ||
        ((i.op[0].disps)->X_add_number == 0xf0)))) {
      puVar13 = (uchar *)frag_more(5);
      iVar23 = 5;
      vVar12 = 0x240483f0;
      goto LAB_0013817e;
    }
    if (omit_lock_prefix != 0) goto LAB_00137bee;
  }
  if ((i.tm.opcode_modifier._4_4_ & 0x7000600) != 0) {
    lVar20 = 0;
    do {
      if (i.prefix[lVar20] != 0) {
        uVar19 = (uint)lVar20;
        if (uVar19 == 0) {
LAB_00137a7e:
                    /* WARNING: Subroutine does not return */
          as_abort("../../gas/config/tc-i386.c",0x1e38,"output_insn");
        }
        if (uVar19 < 3) {
          frag_append_1_char((uint)i.prefix[lVar20]);
        }
        else if (uVar19 != 6) goto LAB_00137a7e;
      }
      lVar20 = lVar20 + 1;
    } while (lVar20 != 7);
    if (i.vrex != 0) {
                    /* WARNING: Subroutine does not return */
      as_abort("../../gas/config/tc-i386.c",0x1e3f,"output_insn");
    }
    pcVar9 = frag_more((ulong)i.vex.length);
    if (i.vex.length != 0) {
      lVar20 = 0;
      do {
        pcVar9[lVar20] = i.vex.bytes[lVar20];
        lVar20 = lVar20 + 1;
      } while ((uint)lVar20 < i.vex.length);
    }
    goto LAB_00137e10;
  }
  if (i.tm.opcode_length != '\x01') {
    if (i.tm.opcode_length == '\0') {
      pcVar9 = (char *)dcgettext(0,"pseudo prefix without instruction",5);
      as_bad_where(pfVar3->fr_file,pfVar3->fr_line,pcVar9);
      return;
    }
    if (i.tm.opcode_length == '\x02') {
      if ((i.tm.base_opcode & 0xff0000) != 0) {
        uVar19 = i.tm.base_opcode >> 0x10 & 0xff;
        if ((i.tm.cpu_flags.array[0]._2_1_ & 0x10) != 0) goto LAB_00137dbf;
LAB_00137dd0:
        add_prefix(uVar19);
      }
    }
    else {
      if (i.tm.opcode_length != '\x03') {
                    /* WARNING: Subroutine does not return */
        as_abort("../../gas/config/tc-i386.c",0x1e15,"output_insn");
      }
      if ((i.tm.base_opcode & 0xff000000) != 0) {
        uVar19 = i.tm.base_opcode >> 0x18;
LAB_00137dbf:
        if ((uVar19 != 0xf3) || (i.prefix[4] != 0xf3)) goto LAB_00137dd0;
      }
    }
  }
  if ((((x86_elf_abi == X86_64_X32_ABI) && (i.operands == 2)) &&
      (i.reloc[0] == BFD_RELOC_X86_64_GOTTPOFF)) && (i.prefix[6] == '\0')) {
    add_prefix(0x40);
  }
  puVar21 = i.prefix;
  do {
    while (*puVar21 == 0) {
      puVar21 = puVar21 + 1;
      if (puVar21 == &i.field_0x12b) goto LAB_00137e10;
    }
    frag_append_1_char((uint)*puVar21);
    puVar21 = puVar21 + 1;
  } while (puVar21 != &i.field_0x12b);
LAB_00137e10:
  if (i.tm.opcode_length == '\x01') {
    frag_append_1_char(i.tm.base_opcode);
  }
  else {
    if (i.tm.opcode_length == '\x03') {
      pcVar8 = frag_more(3);
      pcVar9 = pcVar8 + 1;
      *pcVar8 = (char)(i.tm.base_opcode >> 0x10);
    }
    else if (i.tm.opcode_length == '\x04') {
      pcVar8 = frag_more(4);
      *pcVar8 = (char)(i.tm.base_opcode >> 0x18);
      pcVar9 = pcVar8 + 2;
      pcVar8[1] = (char)(i.tm.base_opcode >> 0x10);
    }
    else {
      if (i.tm.opcode_length != '\x02') {
                    /* WARNING: Subroutine does not return */
        as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn");
      }
      pcVar9 = frag_more(2);
    }
    *pcVar9 = (char)(i.tm.base_opcode >> 8);
    pcVar9[1] = (char)i.tm.base_opcode;
  }
  if ((((i.tm.opcode_modifier._0_1_ & 8) != 0) &&
      (frag_append_1_char(i.rm.reg * 8 | i.rm.mode << 6 | i.rm.regmem), i.rm.regmem == 4)) &&
     ((i.rm.mode != 3 &&
      ((i.base_reg == (reg_entry *)0x0 || (((ulong)(i.base_reg)->reg_type & 0x40000000) == 0)))))) {
    frag_append_1_char(i.sib.index * 8 | i.sib.scale << 6 | i.sib.base);
  }
  if (i.disp_operands != 0) {
    if (i.operands == 0) {
      return;
    }
    uVar29 = 0;
    uVar19 = i.operands;
    do {
      uVar28 = i.operands;
      if ((*(byte *)((long)i.types + uVar29 * 8 + 2) & 0x1f) != 0) {
        peVar15 = i.op[uVar29].disps;
        bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);
        bVar17 = bVar16 >> 4 & 1;
        if (peVar15->field_0x18 == '\x02') {
          lVar20 = peVar15->X_add_number;
          if (bVar17 == 0) {
            if ((bVar16 & 1) == 0) {
              bVar16 = bVar16 >> 1 & 1;
              sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;
              iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;
            }
            else {
              sVar25 = 1;
              iVar23 = 1;
              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);
            }
          }
          else {
            sVar25 = 8;
            iVar23 = 8;
          }
          vVar12 = offset_in_range(lVar20,iVar23);
          pcVar9 = frag_more(sVar25);
          number_to_chars_littleendian(pcVar9,vVar12,iVar23);
          uVar28 = i.operands;
        }
        else {
          if (bVar17 == 0) {
            if ((bVar16 & 1) != 0) {
LAB_00138302:
                    /* WARNING: Subroutine does not return */
              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");
            }
            bVar17 = bVar16 >> 1;
            bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);
            uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2;
            uVar28 = i.flags[uVar29];
          }
          else {
            uVar28 = i.flags[uVar29];
            if ((bVar16 & 1) != 0) goto LAB_00138302;
            uVar27 = 8;
          }
          local_58 = bVar16 >> 3 & 1;
          uVar28 = uVar28 & 1;
          if ((uVar28 != 0) && (i.imm_operands != 0)) {
            uVar11 = 0;
            cVar24 = '\0';
            do {
              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {
                if (cVar24 != '\0') {
                    /* WARNING: Subroutine does not return */
                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");
                }
                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);
                if ((char)bVar16 < '\0') {
                  lVar20 = 8;
                  cVar24 = '\b';
                }
                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {
                  bVar16 = bVar16 >> 4 & 1;
                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;
                  cVar24 = (-(bVar16 == 0) & 2U) + 2;
                }
                else {
                  lVar20 = 1;
                  cVar24 = '\x01';
                }
                peVar15->X_add_number = peVar15->X_add_number - lVar20;
              }
              uVar11 = uVar11 + 1;
            } while ((uint)uVar11 < uVar19);
            if (cVar24 == '\0') {
                    /* WARNING: Subroutine does not return */
              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");
            }
          }
          pcVar9 = frag_more((long)(int)uVar27);
          bVar6 = reloc(uVar27,uVar28,local_58,i.reloc[uVar29]);
          pfVar26 = frag_now;
          if (GOT_symbol == (symbolS *)0x0) {
            peVar15 = i.op[uVar29].disps;
            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;
          }
          else {
            peVar15 = i.op[uVar29].disps;
            if (GOT_symbol == peVar15->X_add_symbol) {
              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {
LAB_001386f0:
                if (peVar15->field_0x18 != '\x03') {
                  if (peVar15->field_0x18 == '\x13') {
                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);
                    peVar15 = i.op[uVar29].disps;
                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;
                  }
                  goto LAB_001385b1;
                }
LAB_00138730:
                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;
              }
              else {
                if (bVar6 == BFD_RELOC_64) {
                  if (object_64bit == 0) goto LAB_001383be;
                  goto LAB_001386f0;
                }
LAB_001385b1:
                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;
                pfVar26 = frag_now;
                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;
              }
              pfVar26 = frag_now;
              if (pfVar3 == frag_now) {
                lVar18 = -aVar7;
              }
              else {
                lVar18 = pfVar3->fr_fix - aVar7;
                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));
                    pfVar1 = pfVar1->fr_next) {
                  lVar18 = lVar18 + pfVar1->fr_fix;
                }
              }
              if (object_64bit == 0) {
                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;
                bVar6 = BFD_RELOC_386_GOTPC;
              }
              else {
                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;
              }
            }
            else {
LAB_001383be:
              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;
            }
          }
LAB_001383d2:
          pfVar10 = fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6);
          prVar2 = i.base_reg;
          uVar28 = i.operands;
          if (i.prefix[3] == '\0') {
            if (generate_relax_relocations == 0) {
              if (i.rm.mode == 0 && object_64bit == 0) {
LAB_00138410:
                if (i.rm.regmem == 5) goto LAB_0013841d;
              }
            }
            else if (i.rm.mode == 2) {
LAB_0013841d:
              if (i.operands == 1) {
                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {
                  if (i.imm_operands == 0) {
                    return;
                  }
                  goto LAB_00137e9a;
                }
              }
              else if ((i.operands != 2) ||
                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&
                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;
              if (object_64bit == 0) {
                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;
              }
              else {
                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';
                *(byte *)pfVar10 = bVar16;
                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {
                  *(byte *)pfVar10 = bVar16 | 0x10;
                }
              }
            }
            else if (i.rm.mode == 0) goto LAB_00138410;
          }
        }
      }
LAB_00138326:
      uVar19 = uVar28;
      uVar29 = uVar29 + 1;
    } while ((uint)uVar29 < uVar19);
  }
  if ((i.imm_operands != 0) && (i.operands != 0)) {
LAB_00137e9a:
    uVar29 = 0;
    do {
      if (((i.rounding == (RC_Operation *)0x0) || ((i.rounding)->operand != (int)uVar29)) &&
         ((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0xfc) != 0)) {
        bVar16 = *(byte *)((long)i.types + uVar29 * 8 + 1);
        if ((i.op[uVar29].disps)->field_0x18 == '\x02') {
          if ((char)bVar16 < '\0') {
            sVar25 = 8;
            iVar23 = 8;
          }
          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {
            bVar16 = bVar16 >> 4 & 1;
            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;
            iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;
          }
          else {
            sVar25 = 1;
            iVar23 = 1;
          }
          vVar12 = offset_in_range((i.op[uVar29].disps)->X_add_number,iVar23);
          pcVar9 = frag_more(sVar25);
          number_to_chars_littleendian(pcVar9,vVar12,iVar23);
        }
        else {
          if ((char)bVar16 < '\0') {
            uVar19 = 8;
            sVar25 = 8;
          }
          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {
            bVar16 = bVar16 >> 4 & 1;
            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;
            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;
          }
          else {
            uVar19 = 1;
            sVar25 = 1;
          }
          uVar28 = 0;
          if ((((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&
              (uVar28 = 1, i.suffix != 'q')) && (uVar28 = 0, i.suffix == '\0')) {
            uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1;
          }
          pcVar9 = frag_more(sVar25);
          bVar6 = reloc(uVar19,0,uVar28,i.reloc[uVar29]);
          if ((bVar6 - BFD_RELOC_64 < 2) || (bVar6 == BFD_RELOC_X86_64_32S)) {
            peVar15 = i.op[uVar29].disps;
            if ((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)) {
              if (peVar15->field_0x18 == '\x03') {
LAB_00138a92:
                pfVar26 = frag_now;
                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;
                if (pfVar3 == frag_now) {
                  lVar18 = -aVar7;
                }
                else {
                  lVar18 = pfVar3->fr_fix - aVar7;
                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));
                      pfVar1 = pfVar1->fr_next) {
                    lVar18 = lVar18 + pfVar1->fr_fix;
                  }
                }
                if (object_64bit == 0) {
                  bVar6 = BFD_RELOC_386_GOTPC;
                }
                else if (uVar19 == 4) {
                  bVar6 = BFD_RELOC_X86_64_GOTPC32;
                }
                else if (uVar19 == 8) {
                  bVar6 = BFD_RELOC_X86_64_GOTPC64;
                }
                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;
                goto LAB_00137fa9;
              }
              if (peVar15->field_0x18 == '\x13') {
                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);
                peVar15 = i.op[uVar29].disps;
                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;
              }
            }
            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;
            pfVar26 = frag_now;
          }
          else {
            peVar15 = i.op[uVar29].disps;
            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;
            pfVar26 = frag_now;
          }
LAB_00137fa9:
          fix_new_exp(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6);
        }
      }
      uVar19 = (int)uVar29 + 1;
      uVar29 = (ulong)uVar19;
    } while (uVar19 < i.operands);
  }
  return;
}



/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

void FUN_001379a0(void)

{
  long lVar1;
  byte bVar2;
  byte bVar3;
  int iVar4;
  undefined4 uVar5;
  long lVar6;
  undefined1 *puVar7;
  byte *pbVar8;
  ulong uVar9;
  undefined1 *puVar10;
  undefined8 uVar11;
  undefined8 uVar12;
  byte *pbVar13;
  long *plVar14;
  byte bVar15;
  long lVar16;
  long lVar17;
  long lVar18;
  char cVar19;
  int iVar20;
  uint uVar21;
  uint uVar22;
  long lVar23;
  char *pcVar24;
  char cVar25;
  long lVar26;
  char cVar27;
  ulong uVar28;
  bool bVar29;
  ulong uVar30;
  
  FUN_0010e9f0(0);
  lVar1 = DAT_001e4648;
  lVar6 = FUN_001171d0();
  iVar4 = DAT_001e3c9c;
  if ((DAT_001e3be8 & 0x20) != 0) {
    bVar15 = (DAT_001e3d40 == 2) * '\x02';
    if (DAT_001e3ce7 != '\0') {
      cVar19 = '\x02';
      DAT_001e3ce0 = DAT_001e3ce0 + -1;
      bVar29 = DAT_001e3b14 != 1;
    }
    else {
      bVar29 = DAT_001e3b14 == 1;
      cVar19 = '\x01';
    }
    cVar25 = DAT_001e3ce7 != '\0';
    cVar27 = cVar19;
    if ((DAT_001e3ce5 & 0xef) == 0x2e) {
      DAT_001e3ce0 = DAT_001e3ce0 + -1;
      cVar27 = cVar19 + '\x01';
      cVar25 = cVar19;
    }
    cVar19 = cVar27;
    if (DAT_001e3cea != 0) {
      DAT_001e3ce0 = DAT_001e3ce0 + -1;
      cVar19 = cVar27 + '\x01';
      cVar25 = cVar27;
    }
    if (DAT_001e3ce8 != '\0') {
      FUN_00117220();
      DAT_001e3ce0 = DAT_001e3ce0 + -1;
    }
    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {
      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);
      FUN_0011d8a0(uVar11);
    }
    FUN_00116e70(cVar25 + '\x06');
    pbVar8 = (byte *)FUN_00116fb0(cVar19);
    if (DAT_001e3ce7 != '\0') {
      *pbVar8 = 0x66;
      pbVar8 = pbVar8 + 1;
    }
    if ((DAT_001e3ce5 & 0xef) == 0x2e) {
      *pbVar8 = DAT_001e3ce5;
      pbVar8 = pbVar8 + 1;
    }
    if (DAT_001e3cea != 0) {
      *pbVar8 = DAT_001e3cea;
      pbVar8 = pbVar8 + 1;
    }
    bVar2 = (byte)DAT_001e3bcc;
    *pbVar8 = bVar2;
    bVar3 = bVar15;
    if (bVar2 != 0xeb) {
      bVar3 = bVar15 | 8;
      if (((byte)DAT_001da770 & 4) != 0) {
        bVar3 = bVar15 | 4;
      }
    }
    if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {
      uVar11 = *DAT_001e3c60;
      uVar12 = DAT_001e3c60[2];
    }
    else {
      uVar11 = FUN_00113ee0();
      uVar12 = 0;
    }
    FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);
    return;
  }
  if ((DAT_001e3be8 & 0xc0) != 0) {
    if ((char)DAT_001e3be8 < '\0') {
      if (DAT_001e3ce6 != '\0') {
        FUN_00117220(0x67);
        DAT_001e3ce0 = DAT_001e3ce0 + -1;
      }
      iVar20 = 1;
      if ((DAT_001e3ce5 & 0xef) == 0x2e) {
        FUN_00117220();
        DAT_001e3ce0 = DAT_001e3ce0 + -1;
      }
    }
    else {
      if (DAT_001e3b14 == 1) {
        if (DAT_001e3ce7 == '\0') {
          iVar20 = 2;
          goto LAB_00137acf;
        }
        FUN_00117220(0x66);
        DAT_001e3ce0 = DAT_001e3ce0 + -1;
      }
      else if (DAT_001e3ce7 != '\0') {
        iVar20 = 2;
        FUN_00117220(0x66);
        DAT_001e3ce0 = DAT_001e3ce0 + -1;
        goto LAB_00137acf;
      }
      iVar20 = 4;
    }
LAB_00137acf:
    if (DAT_001e3cea != 0) {
      FUN_00117220();
      DAT_001e3ce0 = DAT_001e3ce0 + -1;
    }
    if (DAT_001e3ce8 != '\0') {
      FUN_00117220();
      DAT_001e3ce0 = DAT_001e3ce0 + -1;
    }
    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {
      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);
      FUN_0011d8a0(uVar11);
    }
    puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);
    puVar10 = puVar7;
    if (DAT_001e3bd4 != 1) {
      if (DAT_001e3bd4 != 2) {
                    /* WARNING: Subroutine does not return */
        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");
      }
      puVar10 = puVar7 + 1;
      *puVar7 = (char)(DAT_001e3bcc >> 8);
    }
    *puVar10 = (char)DAT_001e3bcc;
    if ((iVar20 == 4) && (iVar4 == 0x47)) {
      iVar4 = FUN_00136e70(*DAT_001e3c60);
      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);
      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);
      return;
    }
    uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);
    pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,
                                  DAT_001e3c60,1,uVar5);
    if (iVar20 != 1) {
      return;
    }
    *pbVar8 = *pbVar8 | 0x80;
    return;
  }
  if ((DAT_001e3be9 & 1) != 0) {
    if (DAT_001e3ce7 != '\0') {
      DAT_001e3ce0 = DAT_001e3ce0 + -1;
      bVar29 = DAT_001e3b14 != 1;
    }
    else {
      bVar29 = DAT_001e3b14 == 1;
    }
    uVar21 = (uint)(DAT_001e3ce7 != '\0');
    if (DAT_001e3cea != 0) {
      DAT_001e3ce0 = DAT_001e3ce0 + -1;
      uVar21 = uVar21 + 1;
    }
    iVar4 = (-(uint)!bVar29 & 2) + 2;
    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {
      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);
      FUN_0011d8a0(uVar11);
    }
    pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);
    if (DAT_001e3ce7 != '\0') {
      *pbVar8 = 0x66;
      pbVar8 = pbVar8 + 1;
    }
    pbVar13 = pbVar8 + 1;
    if (DAT_001e3cea != 0) {
      *pbVar8 = DAT_001e3cea;
      pbVar13 = pbVar8 + 2;
      pbVar8 = pbVar8 + 1;
    }
    *pbVar8 = (byte)DAT_001e3bcc;
    if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {
      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);
      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {
        uVar11 = dcgettext(0,"16-bit jump out of range",5);
        FUN_0011da70(uVar11);
        return;
      }
      FUN_00131030(pbVar13,uVar28,iVar4);
    }
    else {
      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);
      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);
    }
    uVar11 = DAT_001e3bc0;
    if (*(char *)(DAT_001e3c60 + 3) != '\x02') {
      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);
      FUN_0011da70(uVar12,uVar11);
    }
    uVar11 = DAT_001e3c60[2];
    uVar12 = 2;
    pbVar13 = pbVar13 + iVar4;
LAB_0013817e:
    FUN_00131030(pbVar13,uVar11,uVar12);
    return;
  }
  if ((DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae)) {
    if (DAT_001e3ae0 != 0) {
      if (DAT_001e3bcc == 0xf0) {
        return;
      }
LAB_00137bee:
      DAT_001e3ce9 = 0;
    }
  }
  else {
    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&
       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {
      pbVar13 = (byte *)FUN_00116fb0(5);
      uVar12 = 5;
      uVar11 = 0x240483f0;
      goto LAB_0013817e;
    }
    if (DAT_001e3ae0 != 0) goto LAB_00137bee;
  }
  if ((_DAT_001e3bec & 0x7000600) != 0) {
    lVar23 = 0;
    do {
      if ((&DAT_001e3ce4)[lVar23] != '\0') {
        uVar21 = (uint)lVar23;
        if (uVar21 == 0) {
LAB_00137a7e:
                    /* WARNING: Subroutine does not return */
          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");
        }
        if (uVar21 < 3) {
          FUN_00117220();
        }
        else if (uVar21 != 6) goto LAB_00137a7e;
      }
      lVar23 = lVar23 + 1;
    } while (lVar23 != 7);
    if (DAT_001e3cfc != 0) {
                    /* WARNING: Subroutine does not return */
      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");
    }
    lVar23 = FUN_00116fb0(DAT_001e3d14);
    if (DAT_001e3d14 != 0) {
      lVar16 = 0;
      do {
        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];
        lVar16 = lVar16 + 1;
      } while ((uint)lVar16 < DAT_001e3d14);
    }
    goto LAB_00137e10;
  }
  if (DAT_001e3bd4 != 1) {
    if (DAT_001e3bd4 == 0) {
      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);
      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);
      return;
    }
    if (DAT_001e3bd4 == 2) {
      if ((DAT_001e3bcc & 0xff0000) != 0) {
        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;
        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;
LAB_00137dd0:
        FUN_00131f90();
      }
    }
    else {
      if (DAT_001e3bd4 != 3) {
                    /* WARNING: Subroutine does not return */
        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");
      }
      if ((DAT_001e3bcc & 0xff000000) != 0) {
        uVar21 = DAT_001e3bcc >> 0x18;
LAB_00137dbf:
        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;
      }
    }
  }
  if ((((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&
     (DAT_001e3cea == 0)) {
    FUN_00131f90(0x40);
  }
  pcVar24 = &DAT_001e3ce4;
  do {
    while (*pcVar24 == '\0') {
      pcVar24 = pcVar24 + 1;
      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;
    }
    FUN_00117220();
    pcVar24 = pcVar24 + 1;
  } while (pcVar24 != &DAT_001e3ceb);
LAB_00137e10:
  if (DAT_001e3bd4 == 1) {
    FUN_00117220(DAT_001e3bcc);
  }
  else {
    if (DAT_001e3bd4 == 3) {
      puVar7 = (undefined1 *)FUN_00116fb0(3);
      puVar10 = puVar7 + 1;
      *puVar7 = (char)(DAT_001e3bcc >> 0x10);
    }
    else if (DAT_001e3bd4 == 4) {
      puVar7 = (undefined1 *)FUN_00116fb0(4);
      *puVar7 = (char)(DAT_001e3bcc >> 0x18);
      puVar10 = puVar7 + 2;
      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);
    }
    else {
      if (DAT_001e3bd4 != 2) {
                    /* WARNING: Subroutine does not return */
        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");
      }
      puVar10 = (undefined1 *)FUN_00116fb0(2);
    }
    *puVar10 = (char)(DAT_001e3bcc >> 8);
    puVar10[1] = (char)DAT_001e3bcc;
  }
  if ((((DAT_001e3be8 & 8) != 0) &&
      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&
     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))
     ) {
    FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);
  }
  if (DAT_001e3c2c != 0) {
    if (DAT_001e3c24 == 0) {
      return;
    }
    uVar28 = 0;
    uVar21 = DAT_001e3c24;
    do {
      uVar22 = DAT_001e3c24;
      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {
        lVar23 = (long)(&DAT_001e3c60)[uVar28];
        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);
        bVar3 = bVar15 >> 4 & 1;
        if (*(char *)(lVar23 + 0x18) == '\x02') {
          lVar23 = *(long *)(lVar23 + 0x10);
          if (bVar3 == 0) {
            if ((bVar15 & 1) == 0) {
              bVar15 = bVar15 >> 1 & 1;
              cVar25 = (-(bVar15 == 0) & 2U) + 2;
              cVar19 = (-(bVar15 == 0) & 2U) + 2;
            }
            else {
              cVar25 = '\x01';
              cVar19 = '\x01';
              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);
            }
          }
          else {
            cVar25 = '\b';
            cVar19 = '\b';
          }
          uVar11 = FUN_00135250(lVar23,cVar19);
          uVar12 = FUN_00116fb0(cVar25);
          FUN_00131030(uVar12,uVar11,cVar19);
          uVar22 = DAT_001e3c24;
        }
        else {
          if (bVar3 == 0) {
            if ((bVar15 & 1) != 0) {
LAB_00138302:
                    /* WARNING: Subroutine does not return */
              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");
            }
            bVar3 = bVar15 >> 1;
            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);
            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;
            uVar22 = (&DAT_001e3c88)[uVar28];
          }
          else {
            uVar22 = (&DAT_001e3c88)[uVar28];
            if ((bVar15 & 1) != 0) goto LAB_00138302;
            cVar19 = '\b';
          }
          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;
          uVar22 = uVar22 & 1;
          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {
            uVar9 = 0;
            cVar25 = '\0';
            do {
              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {
                if (cVar25 != '\0') {
                    /* WARNING: Subroutine does not return */
                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");
                }
                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);
                if ((char)bVar15 < '\0') {
                  lVar16 = 8;
                  cVar25 = '\b';
                }
                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {
                  bVar15 = bVar15 >> 4 & 1;
                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;
                  cVar25 = (-(bVar15 == 0) & 2U) + 2;
                }
                else {
                  lVar16 = 1;
                  cVar25 = '\x01';
                }
                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;
              }
              uVar9 = uVar9 + 1;
            } while ((uint)uVar9 < uVar21);
            if (cVar25 == '\0') {
                    /* WARNING: Subroutine does not return */
              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");
            }
          }
          lVar16 = FUN_00116fb0(cVar19);
          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);
          lVar23 = DAT_001e4648;
          if (DAT_001e3a80 == 0) {
            plVar14 = (&DAT_001e3c60)[uVar28];
            lVar16 = lVar16 - (DAT_001e4648 + 0x80);
          }
          else {
            plVar14 = (&DAT_001e3c60)[uVar28];
            if (DAT_001e3a80 == *plVar14) {
              if ((uVar21 == 2) || (uVar21 == 0x184)) {
LAB_001386f0:
                if ((char)plVar14[3] != '\x03') {
                  if ((char)plVar14[3] == '\x13') {
                    uVar30 = (ulong)uVar21;
                    lVar23 = FUN_0012bc00(plVar14[1]);
                    uVar21 = (uint)uVar30;
                    plVar14 = (&DAT_001e3c60)[uVar28];
                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;
                  }
                  goto LAB_001385b1;
                }
LAB_00138730:
                lVar16 = lVar16 - (DAT_001e4648 + 0x80);
              }
              else {
                if (uVar21 == 1) {
                  if (DAT_001e3b10 == 0) goto LAB_001383be;
                  goto LAB_001386f0;
                }
LAB_001385b1:
                lVar16 = lVar16 - (DAT_001e4648 + 0x80);
                lVar23 = DAT_001e4648;
                if (uVar21 != 9) goto LAB_001383d2;
              }
              lVar23 = DAT_001e4648;
              if (lVar1 == DAT_001e4648) {
                lVar17 = -lVar6;
              }
              else {
                uVar30 = *(ulong *)(lVar1 + 0x10);
                lVar17 = uVar30 - lVar6;
                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));
                    lVar26 = *(long *)(lVar26 + 0x38)) {
                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);
                }
              }
              if (DAT_001e3b10 == 0) {
                plVar14[2] = plVar14[2] + lVar16 + lVar17;
                uVar21 = 0x16b;
              }
              else {
                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;
              }
            }
            else {
LAB_001383be:
              lVar16 = lVar16 - (DAT_001e4648 + 0x80);
            }
          }
LAB_001383d2:
          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);
          lVar23 = DAT_001e3cb0;
          uVar22 = DAT_001e3c24;
          if (DAT_001e3ce7 == '\0') {
            if (DAT_001da788 == 0) {
              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {
LAB_00138410:
                if (DAT_001e3cec == 5) goto LAB_0013841d;
              }
            }
            else if (DAT_001e3cf4 == 2) {
LAB_0013841d:
              if (DAT_001e3c24 == 1) {
                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {
                  if (DAT_001e3c34 == 0) {
                    return;
                  }
                  goto LAB_00137e9a;
                }
              }
              else if ((DAT_001e3c24 != 2) ||
                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&
                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;
              if (DAT_001e3b10 == 0) {
                *pbVar8 = *pbVar8 | 0x10;
              }
              else {
                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';
                *pbVar8 = bVar15;
                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {
                  *pbVar8 = bVar15 | 0x10;
                }
              }
            }
            else if (DAT_001e3cf4 == 0) goto LAB_00138410;
          }
        }
      }
LAB_00138326:
      uVar21 = uVar22;
      uVar28 = uVar28 + 1;
    } while ((uint)uVar28 < uVar21);
  }
  if ((DAT_001e3c34 != 0) && (DAT_001e3c24 != 0)) {
LAB_00137e9a:
    uVar28 = 0;
    do {
      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&
         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {
        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);
        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {
          if ((char)bVar15 < '\0') {
            cVar25 = '\b';
            cVar19 = '\b';
          }
          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {
            bVar15 = bVar15 >> 4 & 1;
            cVar25 = (-(bVar15 == 0) & 2U) + 2;
            cVar19 = (-(bVar15 == 0) & 2U) + 2;
          }
          else {
            cVar25 = '\x01';
            cVar19 = '\x01';
          }
          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);
          uVar12 = FUN_00116fb0(cVar25);
          FUN_00131030(uVar12,uVar11,cVar19);
        }
        else {
          if ((char)bVar15 < '\0') {
            cVar19 = '\b';
            cVar25 = '\b';
          }
          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {
            bVar15 = bVar15 >> 4 & 1;
            cVar25 = (-(bVar15 == 0) & 2U) + 2;
            cVar19 = (-(bVar15 == 0) & 2U) + 2;
          }
          else {
            cVar19 = '\x01';
            cVar25 = '\x01';
          }
          bVar15 = 0;
          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&
              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {
            bVar15 = DAT_001e3bea >> 3 & 1;
          }
          lVar23 = FUN_00116fb0(cVar19);
          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);
          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {
            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];
            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {
              if ((char)plVar14[3] == '\x03') {
LAB_00138a92:
                lVar16 = DAT_001e4648;
                lVar26 = lVar23 - (DAT_001e4648 + 0x80);
                if (lVar1 == DAT_001e4648) {
                  lVar18 = -lVar6;
                }
                else {
                  lVar23 = *(long *)(lVar1 + 0x10);
                  lVar18 = lVar23 - lVar6;
                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));
                      lVar17 = *(long *)(lVar17 + 0x38)) {
                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);
                  }
                }
                if (DAT_001e3b10 == 0) {
                  iVar4 = 0x16b;
                }
                else if (cVar25 == '\x04') {
                  iVar4 = 0x18e;
                }
                else if (cVar25 == '\b') {
                  iVar4 = 0x191;
                }
                plVar14[2] = plVar14[2] + lVar26 + lVar18;
                goto LAB_00137fa9;
              }
              if ((char)plVar14[3] == '\x13') {
                lVar16 = FUN_0012bc00(plVar14[1]);
                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];
                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;
              }
            }
            lVar26 = lVar23 - (DAT_001e4648 + 0x80);
            lVar16 = DAT_001e4648;
          }
          else {
            plVar14 = (&DAT_001e3c60)[uVar28];
            lVar26 = lVar23 - (DAT_001e4648 + 0x80);
            lVar16 = DAT_001e4648;
          }
LAB_00137fa9:
          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);
        }
      }
      uVar21 = (int)uVar28 + 1;
      uVar28 = (ulong)uVar21;
    } while (uVar21 < DAT_001e3c24);
  }
  return;
}


PUSH R15
XOR EDI,EDI
PUSH R14
PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
SUB RSP,0x28
CALL 0x0010e9f0
MOV RAX,qword ptr [0x001e4648]
MOV qword ptr [RSP + 0x10],RAX
CALL 0x001171d0
MOV qword ptr [RSP + 0x18],RAX
MOVZX EAX,byte ptr [0x001e3be8]
TEST AL,0x20
JNZ 0x00137c10
TEST AL,0xc0
JNZ 0x00137aa0
TEST byte ptr [0x001e3be9],0x1
JNZ 0x00138030
MOV EDI,dword ptr [0x001e3adc]
TEST EDI,EDI
JZ 0x00137bd0
CMP dword ptr [0x001e3bcc],0xfae
JNZ 0x00137bd0
CMP dword ptr [0x001e3c24],0x1
JZ 0x00138a10
MOV EDX,dword ptr [0x001e3ae0]
TEST EDX,EDX
JNZ 0x00137bee
NOP dword ptr [RAX + RAX*0x1]
TEST dword ptr [0x001e3bec],0x7000600
JZ 0x00137d88
XOR EBX,EBX
LEA RBP,[0x1e3ce4]
JMP 0x00137a66
CALL 0x00117220
NOP dword ptr [RAX]
ADD RBX,0x1
CMP RBX,0x7
JZ 0x00138228
MOVZX EDI,byte ptr [RBP + RBX*0x1]
TEST DIL,DIL
JZ 0x00137a58
TEST EBX,EBX
JZ 0x00137a7e
CMP EBX,0x2
JBE 0x00137a50
CMP EBX,0x6
JZ 0x00137a58
LEA RDX,[0x1537e0]
MOV ESI,0x1e38
LEA RDI,[0x152046]
CALL 0x0011dd00
MOV EBP,dword ptr [0x001e3c9c]
TEST AL,AL
JS 0x00137fd0
CMP dword ptr [0x001e3b14],0x1
MOVZX EAX,byte ptr [0x001e3ce7]
JZ 0x00138b20
TEST AL,AL
JNZ 0x00138c50
MOV EBX,0x4
MOVZX EDI,byte ptr [0x001e3cea]
TEST DIL,DIL
JNZ 0x00138810
MOVZX EDI,byte ptr [0x001e3ce8]
TEST DIL,DIL
JNZ 0x001387f0
MOV EAX,dword ptr [0x001e3ce0]
TEST EAX,EAX
JZ 0x00137b09
MOV R9D,dword ptr [0x001e3afc]
TEST R9D,R9D
JZ 0x00138b78
MOVZX EDI,byte ptr [0x001e3bd4]
ADD EDI,EBX
MOVSXD RDI,EDI
CALL 0x00116fb0
MOVZX EDX,byte ptr [0x001e3bd4]
CMP DL,0x1
JZ 0x00137b3c
CMP DL,0x2
JNZ 0x00138d1d
MOV EDX,dword ptr [0x001e3bcc]
ADD RAX,0x1
MOV byte ptr [RAX + -0x1],DH
MOV EDX,dword ptr [0x001e3bcc]
LEA R12,[RAX + 0x1]
MOV byte ptr [RAX],DL
CMP EBX,0x4
JNZ 0x00138198
CMP EBP,0x47
JNZ 0x00138198
MOV RAX,qword ptr [0x001e3c60]
MOV RDI,qword ptr [RAX]
CALL 0x00136e70
MOV EDX,0x1
MOV ESI,0x1
MOV EDI,0x4
CMP EAX,0x1
SBB ECX,ECX
AND ECX,0xfffffec9
ADD ECX,0x17e
CALL 0x00134ea0
MOV RDI,qword ptr [0x001e4648]
MOV RSI,R12
MOV RCX,qword ptr [0x001e3c60]
MOV R9D,EAX
ADD RSP,0x28
MOV R8D,0x1
MOV EDX,0x4
LEA RAX,[RDI + 0x80]
POP RBX
POP RBP
SUB RSI,RAX
POP R12
POP R13
POP R14
POP R15
JMP 0x0012ee00
MOV ESI,dword ptr [0x001e3ae0]
TEST ESI,ESI
JZ 0x00137a30
CMP dword ptr [0x001e3bcc],0xf0
JZ 0x00137d4f
MOV byte ptr [0x001e3ce9],0x0
TEST dword ptr [0x001e3bec],0x7000600
JNZ 0x00137a40
JMP 0x00137d88
XOR EBX,EBX
CMP dword ptr [0x001e3d40],0x2
MOV EAX,dword ptr [0x001e3b14]
SETZ BL
ADD EBX,EBX
CMP byte ptr [0x001e3ce7],0x0
JNZ 0x00137d60
XOR R12D,R12D
CMP EAX,0x1
MOV R13D,0x1
SETZ R12B
XOR EBP,EBP
MOVZX EAX,byte ptr [0x001e3ce5]
AND EAX,0xffffffef
CMP AL,0x2e
JNZ 0x00137c5f
SUB dword ptr [0x001e3ce0],0x1
MOV EBP,R13D
ADD R13D,0x1
CMP byte ptr [0x001e3cea],0x0
JZ 0x00137c76
SUB dword ptr [0x001e3ce0],0x1
MOV EBP,R13D
ADD R13D,0x1
MOVZX EDI,byte ptr [0x001e3ce8]
TEST DIL,DIL
JNZ 0x00138280
MOV EAX,dword ptr [0x001e3ce0]
TEST EAX,EAX
JZ 0x00137ca0
MOV R14D,dword ptr [0x001e3afc]
TEST R14D,R14D
JZ 0x00138910
ADD EBP,0x6
MOVSXD RDI,EBP
CALL 0x00116e70
MOVSXD RDI,R13D
CALL 0x00116fb0
CMP byte ptr [0x001e3ce7],0x0
MOV RBP,RAX
JZ 0x00137cc6
MOV byte ptr [RAX],0x66
ADD RBP,0x1
MOVZX EAX,byte ptr [0x001e3ce5]
MOV EDX,EAX
AND EDX,0xffffffef
CMP DL,0x2e
JNZ 0x00137cde
MOV byte ptr [RBP],AL
ADD RBP,0x1
MOVZX EAX,byte ptr [0x001e3cea]
TEST AL,AL
JZ 0x00137cf0
MOV byte ptr [RBP],AL
ADD RBP,0x1
MOV EAX,dword ptr [0x001e3bcc]
MOV byte ptr [RBP],AL
CMP AL,0xeb
JZ 0x00137d0f
MOV ECX,EBX
OR EBX,0x8
OR ECX,0x4
TEST byte ptr [0x001da770],0x4
CMOVNZ EBX,ECX
MOV RDI,qword ptr [0x001e3c60]
OR EBX,R12D
MOVZX EAX,byte ptr [RDI + 0x18]
SUB EAX,0x2
CMP AL,0x1
JA 0x001381f0
MOV R8,qword ptr [RDI]
MOV R9,qword ptr [RDI + 0x10]
SUB RSP,0x8
MOV ECX,EBX
MOV ESI,0x5
MOV EDI,0x7
PUSH RBP
MOV EDX,dword ptr [0x001e3c9c]
CALL 0x00116fe0
POP R10
POP R11
ADD RSP,0x28
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
XOR R12D,R12D
MOV R13D,0x2
MOV EBP,0x1
SUB dword ptr [0x001e3ce0],0x1
CMP EAX,0x1
SETNZ R12B
JMP 0x00137c43
MOVZX EAX,byte ptr [0x001e3bd4]
CMP AL,0x1
JZ 0x00137dd5
TEST AL,AL
JZ 0x00138be0
CMP AL,0x2
JNZ 0x00138200
MOV EAX,dword ptr [0x001e3bcc]
TEST EAX,0xff0000
JZ 0x00137dd5
SHR EAX,0x10
MOVZX EDI,AL
TEST byte ptr [0x001e3bda],0x10
JZ 0x00137dd0
CMP EDI,0xf3
JNZ 0x00137dd0
CMP byte ptr [0x001e3ce8],0xf3
JZ 0x00137dd5
CALL 0x00131f90
CMP dword ptr [0x001e3b04],0x2
JZ 0x00138ba0
LEA RBX,[0x1e3ce4]
LEA RBP,[RBX + 0x7]
JMP 0x00137df9
ADD RBX,0x1
CMP RBX,RBP
JZ 0x00137e10
MOVZX EDI,byte ptr [RBX]
TEST DIL,DIL
JZ 0x00137df0
CALL 0x00117220
ADD RBX,0x1
CMP RBX,RBP
JNZ 0x00137df9
NOP
MOVZX EAX,byte ptr [0x001e3bd4]
CMP AL,0x1
JZ 0x00138af0
CMP AL,0x3
JZ 0x00138870
CMP AL,0x4
JNZ 0x00138010
MOV EDI,0x4
CALL 0x00116fb0
MOVZX EDX,byte ptr [0x001e3bcf]
MOV byte ptr [RAX],DL
MOVZX ECX,word ptr [0x001e3bce]
LEA RDX,[RAX + 0x2]
MOV byte ptr [RAX + 0x1],CL
MOV EAX,dword ptr [0x001e3bcc]
MOV byte ptr [RDX],AH
MOV EAX,dword ptr [0x001e3bcc]
MOV byte ptr [RDX + 0x1],AL
TEST byte ptr [0x001e3be8],0x8
JNZ 0x00138750
MOV EAX,dword ptr [0x001e3c2c]
TEST EAX,EAX
JNZ 0x001382a0
MOV EAX,dword ptr [0x001e3c34]
TEST EAX,EAX
JZ 0x00137d4f
MOV R9D,dword ptr [0x001e3c24]
TEST R9D,R9D
JZ 0x00137d4f
XOR EBX,EBX
LEA R13,[0x1e3bc0]
NOP dword ptr [RAX + RAX*0x1]
MOV RAX,qword ptr [0x001e3d28]
TEST RAX,RAX
JZ 0x00137ebd
CMP dword ptr [RAX + 0x4],EBX
JZ 0x00137fb4
MOV EBP,EBX
LEA RAX,[RBP + 0xe]
TEST byte ptr [R13 + RAX*0x8 + 0x9],0xfc
JZ 0x00137fb4
MOVZX EAX,byte ptr [R13 + RAX*0x8 + 0x9]
MOV RCX,qword ptr [R13 + RBP*0x8 + 0xa0]
MOV EDX,EAX
SHR DL,0x7
CMP byte ptr [RCX + 0x18],0x2
JZ 0x001388a8
TEST DL,DL
JNZ 0x00138b38
TEST AL,0x4
JZ 0x001389a0
MOV R12D,0x1
MOV EDI,0x1
MOV R14D,0x1
XOR R15D,R15D
TEST byte ptr [R13 + RBP*0x8 + 0x79],0x40
JZ 0x00137f40
MOVZX EAX,byte ptr [0x001e3c20]
MOV R15D,0x1
CMP AL,0x71
JZ 0x00137f40
XOR R15D,R15D
TEST AL,AL
JNZ 0x00137f40
MOVZX R15D,byte ptr [0x001e3bea]
SHR R15B,0x3
AND R15D,0x1
CALL 0x00116fb0
MOV EDX,R15D
XOR ESI,ESI
MOV EDI,R12D
MOV ECX,dword ptr [R13 + RBP*0x4 + 0xdc]
MOV qword ptr [RSP],RAX
CALL 0x00134ea0
MOV R9D,EAX
LEA EAX,[RAX + -0x1]
CMP EAX,0x1
JBE 0x00137f76
CMP R9D,0x184
JNZ 0x00138978
MOV RAX,qword ptr [0x001e3a80]
ADD RBP,0x14
MOV RCX,qword ptr [R13 + RBP*0x8]
TEST RAX,RAX
JZ 0x00137f94
CMP RAX,qword ptr [RCX]
JZ 0x00138a60
MOV RDI,qword ptr [0x001e4648]
MOV RSI,qword ptr [RSP]
LEA RAX,[RDI + 0x80]
SUB RSI,RAX
XOR R8D,R8D
MOV EDX,R14D
CALL 0x0012ee00
ADD EBX,0x1
CMP EBX,dword ptr [0x001e3c24]
JC 0x00137ea8
JMP 0x00137d4f
CMP byte ptr [0x001e3ce6],0x0
JNZ 0x00138c20
MOVZX EDI,byte ptr [0x001e3ce5]
MOV EBX,0x1
MOV EAX,EDI
AND EAX,0xffffffef
CMP AL,0x2e
JNZ 0x00137acf
CALL 0x00117220
SUB dword ptr [0x001e3ce0],0x1
JMP 0x00137acf
CMP AL,0x2
JZ 0x00138890
LEA RDX,[0x1537e0]
MOV ESI,0x1e5c
LEA RDI,[0x152046]
CALL 0x0011dd00
CMP byte ptr [0x001e3ce7],0x0
MOV EDX,dword ptr [0x001e3b14]
MOV EAX,dword ptr [0x001e3ce0]
JNZ 0x001387d0
CMP EDX,0x1
SETZ DL
XOR EBP,EBP
MOVZX EDX,DL
CMP byte ptr [0x001e3cea],0x0
JZ 0x00138069
SUB EAX,0x1
ADD EBP,0x1
MOV dword ptr [0x001e3ce0],EAX
CMP EDX,0x1
SBB EBX,EBX
AND EBX,0x2
ADD EBX,0x2
TEST EAX,EAX
JZ 0x00138088
MOV R8D,dword ptr [0x001e3afc]
TEST R8D,R8D
JZ 0x001389d0
LEA EDI,[RBP + RBX*0x1 + 0x3]
MOVSXD RDI,EDI
CALL 0x00116fb0
CMP byte ptr [0x001e3ce7],0x0
JZ 0x001380a4
MOV byte ptr [RAX],0x66
ADD RAX,0x1
MOVZX EDX,byte ptr [0x001e3cea]
LEA RBP,[RAX + 0x1]
TEST DL,DL
JZ 0x001380bf
MOV byte ptr [RAX],DL
LEA RDX,[RAX + 0x2]
MOV RAX,RBP
MOV RBP,RDX
MOV EDX,dword ptr [0x001e3bcc]
MOV byte ptr [RAX],DL
MOV RAX,qword ptr [0x001e3c68]
CMP byte ptr [RAX + 0x18],0x2
JNZ 0x00138828
MOV RSI,qword ptr [RAX + 0x10]
CMP EBX,0x2
JNZ 0x00138128
CMP RSI,0xffff
JBE 0x00138128
LEA RAX,[RSI + 0x8000]
CMP RAX,0xffff
JBE 0x00138128
XOR EDI,EDI
MOV EDX,0x5
LEA RSI,[0x152251]
CALL 0x001081c0
ADD RSP,0x28
POP RBX
MOV RDI,RAX
POP RBP
XOR EAX,EAX
POP R12
POP R13
POP R14
POP R15
JMP 0x0011da70
MOV EDX,EBX
MOV RDI,RBP
CALL 0x00131030
MOV RAX,qword ptr [0x001e3c60]
CMP byte ptr [RAX + 0x18],0x2
JZ 0x0013816d
MOV R12,qword ptr [0x001e3bc0]
MOV EDX,0x5
LEA RSI,[0x150be0]
XOR EDI,EDI
CALL 0x001081c0
MOV RDI,RAX
MOV RSI,R12
XOR EAX,EAX
CALL 0x0011da70
MOV RAX,qword ptr [0x001e3c60]
MOVSXD RBX,EBX
MOV RSI,qword ptr [RAX + 0x10]
MOV EDX,0x2
LEA RDI,[RBP + RBX*0x1]
ADD RSP,0x28
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
JMP 0x00131030
MOV ECX,EBP
MOV EDX,0x1
MOV ESI,0x1
MOV EDI,EBX
CALL 0x00134ea0
MOV RSI,R12
MOV R8D,0x1
MOV EDX,EBX
MOV RDI,qword ptr [0x001e4648]
MOV R9D,EAX
MOV RCX,qword ptr [0x001e3c60]
LEA RAX,[RDI + 0x80]
SUB RSI,RAX
CALL 0x0012ee00
CMP EBX,0x1
JNZ 0x00137d4f
OR byte ptr [RAX],0x80
JMP 0x00137d4f
CALL 0x00113ee0
XOR R9D,R9D
MOV R8,RAX
JMP 0x00137d2f
CMP AL,0x3
JNZ 0x00138d35
MOV EDI,dword ptr [0x001e3bcc]
TEST EDI,0xff000000
JZ 0x00137dd5
SHR EDI,0x18
JMP 0x00137dbf
MOV ECX,dword ptr [0x001e3cfc]
TEST ECX,ECX
JNZ 0x00138d4d
MOV EDI,dword ptr [0x001e3d14]
CALL 0x00116fb0
MOV EDX,dword ptr [0x001e3d14]
TEST EDX,EDX
JZ 0x00137e10
XOR EDX,EDX
LEA RSI,[0x1e3d10]
NOP dword ptr [RAX + RAX*0x1]
MOVZX ECX,byte ptr [RSI + RDX*0x1]
MOV byte ptr [RAX + RDX*0x1],CL
ADD RDX,0x1
CMP dword ptr [0x001e3d14],EDX
JA 0x00138260
JMP 0x00137e10
CALL 0x00117220
MOV EAX,dword ptr [0x001e3ce0]
SUB EAX,0x1
MOV dword ptr [0x001e3ce0],EAX
JMP 0x00137c8c
MOV ECX,dword ptr [0x001e3c24]
TEST ECX,ECX
JZ 0x00137d4f
LEA R12,[0x1e3c38]
XOR R15D,R15D
LEA RBP,[R12 + -0x78]
NOP dword ptr [RAX]
MOV R8D,R15D
TEST byte ptr [R12 + R15*0x8 + 0x2],0x1f
JZ 0x00138320
LEA RAX,[0x1e3c60]
MOV RSI,qword ptr [RAX + R15*0x8]
MOV EAX,R15D
MOVZX EDX,byte ptr [RBP + RAX*0x8 + 0x7a]
MOV EAX,EDX
SHR AL,0x4
AND EAX,0x1
CMP byte ptr [RSI + 0x18],0x2
JZ 0x001384b0
MOV EDI,EDX
AND EDI,0x1
TEST AL,AL
JNZ 0x00138338
TEST DIL,DIL
JZ 0x00138510
LEA RDX,[0x1537c0]
MOV ESI,0x1ec2
LEA RDI,[0x152046]
CALL 0x0011dd00
MOV ECX,dword ptr [0x001e3c24]
ADD R15,0x1
CMP ECX,R15D
JA 0x001382c0
JMP 0x00137e7c
SHR DL,0x3
MOV EAX,EDX
AND EAX,0x1
MOV dword ptr [RSP],EAX
LEA RAX,[0x1e3c88]
MOV EAX,dword ptr [RAX + R15*0x4]
MOV EBX,EAX
MOV dword ptr [RSP + 0xc],EAX
AND EBX,0x1
TEST DIL,DIL
JNZ 0x00138302
MOV R13D,0x8
TEST EBX,EBX
JZ 0x00138374
MOV EAX,dword ptr [0x001e3c34]
TEST EAX,EAX
JNZ 0x00138608
MOVSXD RDI,R13D
CALL 0x00116fb0
MOV EDX,dword ptr [RSP]
MOV ESI,EBX
MOV EDI,R13D
MOV R14,RAX
LEA RAX,[0x1e3c9c]
MOV ECX,dword ptr [RAX + R15*0x4]
CALL 0x00134ea0
MOV R9D,EAX
MOV RAX,qword ptr [0x001e3a80]
TEST RAX,RAX
JZ 0x00138550
LEA RSI,[0x1e3c60]
MOV RCX,qword ptr [RSI + R15*0x8]
CMP RAX,qword ptr [RCX]
JZ 0x00138590
MOV RDI,qword ptr [0x001e4648]
MOV RSI,R14
LEA RAX,[RDI + 0x80]
SUB RSI,RAX
MOV R8D,EBX
MOV EDX,R13D
CALL 0x0012ee00
CMP byte ptr [0x001e3ce7],0x0
JNZ 0x00138320
MOV EBX,dword ptr [0x001da788]
MOV EDX,dword ptr [0x001e3cf4]
MOV ECX,dword ptr [0x001e3c24]
TEST EBX,EBX
JNZ 0x00138578
OR EDX,dword ptr [0x001e3b10]
JNZ 0x00138326
CMP dword ptr [0x001e3cec],0x5
JNZ 0x00138326
CMP ECX,0x1
JZ 0x00138b50
CMP ECX,0x2
JNZ 0x00138326
MOV EDX,dword ptr [0x001e3bcc]
CMP EDX,0x8b
JZ 0x00138458
CMP EDX,0x85
JZ 0x00138458
AND EDX,0xc7
CMP EDX,0x3
JNZ 0x00138326
NOP dword ptr [RAX]
MOV R11D,dword ptr [0x001e3b10]
TEST R11D,R11D
JZ 0x00138c70
MOV R10D,dword ptr [0x001e3cf8]
TEST R10D,R10D
SETNZ DL
LEA ESI,[RDX*0x8]
MOVZX EDX,byte ptr [RAX]
AND EDX,0xfffffff7
OR EDX,ESI
MOV RSI,qword ptr [0x001e3cb0]
MOV byte ptr [RAX],DL
TEST RSI,RSI
JZ 0x00138326
CMP byte ptr [RSI + 0x11],0xfe
JC 0x00138326
OR EDX,0x10
MOV byte ptr [RAX],DL
JMP 0x00138326
MOV RDI,qword ptr [RSI + 0x10]
TEST AL,AL
JNZ 0x00138688
TEST DL,0x1
JNZ 0x001386a0
SHR DL,0x1
AND EDX,0x1
CMP DL,0x1
SBB R14,R14
AND R14D,0x2
ADD R14,0x2
CMP DL,0x1
SBB EBX,EBX
AND EBX,0x2
ADD EBX,0x2
MOV ESI,EBX
CALL 0x00135250
MOV RDI,R14
MOV R13,RAX
CALL 0x00116fb0
MOV EDX,EBX
MOV RSI,R13
MOV RDI,RAX
CALL 0x00131030
MOV ECX,dword ptr [0x001e3c24]
JMP 0x00138326
SHR DL,0x1
MOVZX EBX,byte ptr [RBP + R8*0x8 + 0x7a]
AND EDX,0x1
CMP DL,0x1
SBB R13D,R13D
SHR BL,0x3
MOV EAX,EBX
AND R13D,0x2
AND EAX,0x1
ADD R13D,0x2
MOV dword ptr [RSP],EAX
LEA RAX,[0x1e3c88]
MOV EAX,dword ptr [RAX + R15*0x4]
MOV EBX,EAX
MOV dword ptr [RSP + 0xc],EAX
AND EBX,0x1
JMP 0x00138362
MOV RDI,qword ptr [0x001e4648]
LEA RAX,[0x1e3c60]
MOV RSI,R14
MOV RCX,qword ptr [RAX + R15*0x8]
LEA RAX,[RDI + 0x80]
SUB RSI,RAX
JMP 0x001383d2
CMP EDX,0x2
JZ 0x0013841d
TEST EDX,EDX
JNZ 0x00138326
JMP 0x00138410
CMP R9D,0x2
JZ 0x001386f0
CMP R9D,0x184
JZ 0x001386f0
CMP R9D,0x1
JZ 0x001386e0
MOV RDI,qword ptr [0x001e4648]
MOV RSI,R14
LEA RAX,[RDI + 0x80]
SUB RSI,RAX
CMP R9D,0x9
JNZ 0x001383d2
CMP qword ptr [RSP + 0x10],RDI
JNZ 0x00138938
MOV RDX,RSI
SUB RDX,qword ptr [RSP + 0x18]
MOV R14D,dword ptr [0x001e3b10]
TEST R14D,R14D
JNZ 0x00138b00
ADD qword ptr [RCX + 0x10],RDX
MOV R9D,0x16b
JMP 0x001383d2
XOR EAX,EAX
XOR EDI,EDI
JMP 0x0013864c
TEST DL,0x4
JNZ 0x00138678
TEST DL,0x8
JNZ 0x00138678
SHR DL,0x4
AND EDX,0x1
CMP DL,0x1
SBB R8,R8
AND R8D,0x2
ADD R8,0x2
CMP DL,0x1
SBB EDI,EDI
AND EDI,0x2
ADD EDI,0x2
NOP dword ptr [RAX]
SUB qword ptr [RSI + 0x10],R8
ADD RAX,0x1
CMP ECX,EAX
JBE 0x001386c0
MOV EDX,EAX
TEST byte ptr [R12 + RAX*0x8 + 0x1],0xfc
JZ 0x00138644
TEST EDI,EDI
JNZ 0x00138d05
MOVZX EDX,byte ptr [RBP + RDX*0x8 + 0x79]
TEST DL,DL
JNS 0x00138610
MOV R8D,0x8
MOV EDI,0x8
JMP 0x00138640
MOV R8D,0x1
MOV EDI,0x1
JMP 0x00138640
MOV R14D,0x8
MOV EBX,0x8
JMP 0x001384e3
MOV ECX,dword ptr [0x001e3d38]
MOV R14D,0x1
MOV EBX,0x1
SAR RDI,CL
JMP 0x001384e3
TEST EDI,EDI
JNZ 0x00138374
LEA RDX,[0x1537c0]
MOV ESI,0x1ed6
LEA RDI,[0x152046]
CALL 0x0011dd00
MOV EAX,dword ptr [0x001e3b10]
TEST EAX,EAX
JZ 0x001383be
NOP
MOVZX EAX,byte ptr [RCX + 0x18]
CMP AL,0x3
JZ 0x00138730
CMP AL,0x13
JNZ 0x001385b1
MOV RDI,qword ptr [RCX + 0x8]
MOV dword ptr [RSP],R9D
CALL 0x0012bc00
MOV R9D,dword ptr [RSP]
CMP byte ptr [RAX + 0x18],0x14
LEA RAX,[0x1e3c60]
MOV RCX,qword ptr [RAX + R15*0x8]
JNZ 0x001385b1
NOP word ptr CS:[RAX + RAX*0x1]
MOV RDI,qword ptr [0x001e4648]
MOV RSI,R14
LEA RAX,[RDI + 0x80]
SUB RSI,RAX
JMP 0x001385cf
MOV EAX,dword ptr [0x001e3cf0]
LEA EDI,[RAX*0x8]
MOV EAX,dword ptr [0x001e3cf4]
SHL EAX,0x6
OR EDI,EAX
OR EDI,dword ptr [0x001e3cec]
CALL 0x00117220
CMP dword ptr [0x001e3cec],0x4
JNZ 0x00137e6e
CMP dword ptr [0x001e3cf4],0x3
JZ 0x00137e6e
MOV RAX,qword ptr [0x001e3cb0]
TEST RAX,RAX
JZ 0x001387a3
TEST byte ptr [RAX + 0xb],0x40
JNZ 0x00137e6e
MOV EAX,dword ptr [0x001e3d04]
LEA EDI,[RAX*0x8]
MOV EAX,dword ptr [0x001e3d08]
SHL EAX,0x6
OR EDI,EAX
OR EDI,dword ptr [0x001e3d00]
CALL 0x00117220
JMP 0x00137e6e
SUB EAX,0x1
CMP EDX,0x1
MOV EBP,0x1
SETNZ DL
MOV dword ptr [0x001e3ce0],EAX
MOVZX EDX,DL
JMP 0x00138054
CALL 0x00117220
MOV EAX,dword ptr [0x001e3ce0]
SUB EAX,0x1
MOV dword ptr [0x001e3ce0],EAX
JMP 0x00137af5
CALL 0x00117220
SUB dword ptr [0x001e3ce0],0x1
JMP 0x00137adf
MOV ECX,dword ptr [0x001e3ca0]
XOR EDX,EDX
XOR ESI,ESI
MOV EDI,EBX
CALL 0x00134ea0
MOV RSI,RBP
XOR R8D,R8D
MOV EDX,EBX
MOV RDI,qword ptr [0x001e4648]
MOV R9D,EAX
MOV RCX,qword ptr [0x001e3c68]
LEA RAX,[RDI + 0x80]
SUB RSI,RAX
CALL 0x0012ee00
JMP 0x00138132
MOV EDI,0x3
CALL 0x00116fb0
MOVZX ECX,word ptr [0x001e3bce]
LEA RDX,[RAX + 0x1]
MOV byte ptr [RAX],CL
JMP 0x00137e50
MOV EDI,0x2
CALL 0x00116fb0
MOV RDX,RAX
JMP 0x00137e50
TEST DL,DL
JNZ 0x001389f8
TEST AL,0x4
JNZ 0x00138c40
TEST AL,0x8
JNZ 0x00138c40
SHR AL,0x4
AND EAX,0x1
CMP AL,0x1
SBB R12,R12
AND R12D,0x2
ADD R12,0x2
CMP AL,0x1
SBB EBP,EBP
AND EBP,0x2
ADD EBP,0x2
NOP dword ptr [RAX]
MOV RDI,qword ptr [RCX + 0x10]
MOV ESI,EBP
CALL 0x00135250
MOV RDI,R12
MOV R14,RAX
CALL 0x00116fb0
MOV EDX,EBP
MOV RSI,R14
MOV RDI,RAX
CALL 0x00131030
JMP 0x00137fb4
XOR EDI,EDI
MOV EDX,0x5
LEA RSI,[0x150bb8]
CALL 0x001081c0
MOV RDI,RAX
XOR EAX,EAX
CALL 0x0011d8a0
JMP 0x00137ca0
MOV RAX,qword ptr [RSP + 0x10]
MOV RDX,qword ptr [RAX + 0x10]
MOV RAX,qword ptr [RAX + 0x38]
MOV qword ptr [RSP],RDX
SUB RDX,qword ptr [RSP + 0x18]
TEST RAX,RAX
JNZ 0x00138965
JMP 0x0013896a
ADD RDX,qword ptr [RAX + 0x10]
MOV RAX,qword ptr [RAX + 0x38]
TEST RAX,RAX
JZ 0x0013896a
CMP RAX,RDI
JNZ 0x00138958
ADD RDX,RSI
JMP 0x001385e2
MOV RDI,qword ptr [0x001e4648]
MOV RSI,qword ptr [RSP]
MOV RCX,qword ptr [R13 + RBP*0x8 + 0xa0]
LEA RAX,[RDI + 0x80]
SUB RSI,RAX
JMP 0x00137fa9
TEST AL,0x8
JNZ 0x00137efc
SHR AL,0x4
AND EAX,0x1
CMP AL,0x1
SBB R12D,R12D
AND R12D,0x2
ADD R12D,0x2
CMP AL,0x1
SBB RDI,RDI
MOV R14D,R12D
AND EDI,0x2
ADD RDI,0x2
JMP 0x00137f0d
XOR EDI,EDI
MOV EDX,0x5
LEA RSI,[0x150bb8]
CALL 0x001081c0
MOV RDI,RAX
XOR EAX,EAX
CALL 0x0011d8a0
JMP 0x00138088
MOV R12D,0x8
MOV EBP,0x8
JMP 0x001388e0
CMP dword ptr [0x001e3c34],0x1
JNZ 0x00137a1a
MOV RAX,qword ptr [0x001e3c60]
MOV RAX,qword ptr [RAX + 0x10]
MOV RDX,RAX
AND RDX,-0x11
CMP RDX,0xe8
JZ 0x00138a44
CMP RAX,0xf0
JNZ 0x00137a1a
MOV EDI,0x5
CALL 0x00116fb0
MOV EDX,0x5
MOV ESI,0x240483f0
MOV RDI,RAX
JMP 0x0013817e
MOVZX EAX,byte ptr [RCX + 0x18]
CMP AL,0x3
JZ 0x00138a92
CMP AL,0x13
JNZ 0x00137f94
MOV RDI,qword ptr [RCX + 0x8]
MOV dword ptr [RSP + 0xc],R9D
CALL 0x0012bc00
MOV R9D,dword ptr [RSP + 0xc]
MOV RCX,qword ptr [R13 + RBP*0x8]
CMP byte ptr [RAX + 0x18],0x14
JNZ 0x00137f94
MOV RDI,qword ptr [0x001e4648]
MOV RSI,qword ptr [RSP]
LEA RAX,[RDI + 0x80]
SUB RSI,RAX
CMP qword ptr [RSP + 0x10],RDI
JNZ 0x00138cc2
MOV RDX,RSI
SUB RDX,qword ptr [RSP + 0x18]
MOV R8D,dword ptr [0x001e3b10]
TEST R8D,R8D
JZ 0x00138cb7
CMP R14D,0x4
JZ 0x00138cfa
CMP R14D,0x8
MOV EAX,0x191
CMOVZ R9D,EAX
ADD qword ptr [RCX + 0x10],RDX
JMP 0x00137fa9
MOV EDI,dword ptr [0x001e3bcc]
CALL 0x00117220
JMP 0x00137e61
CMP R9D,0x1
SETZ R9B
MOVZX R9D,R9B
LEA R9D,[R9 + R9*0x2 + 0x18e]
JMP 0x001383d2
TEST AL,AL
JNZ 0x00138c80
MOV EBX,0x2
JMP 0x00137acf
MOV R12D,0x8
MOV EDI,0x8
MOV R14D,0x8
JMP 0x00137f0d
CMP dword ptr [0x001e3bcc],0xff
JZ 0x00138ca0
MOV EAX,dword ptr [0x001e3c34]
TEST EAX,EAX
JZ 0x00137d4f
JMP 0x00137e9a
XOR EDI,EDI
MOV EDX,0x5
LEA RSI,[0x150bb8]
CALL 0x001081c0
MOV RDI,RAX
XOR EAX,EAX
CALL 0x0011d8a0
JMP 0x00137b09
CMP dword ptr [0x001e3c24],0x2
JNZ 0x00137de2
CMP dword ptr [0x001e3c9c],0x18b
JNZ 0x00137de2
CMP byte ptr [0x001e3cea],0x0
JNZ 0x00137de2
MOV EDI,0x40
CALL 0x00131f90
JMP 0x00137de2
MOV EDX,0x5
LEA RSI,[0x150c10]
XOR EDI,EDI
CALL 0x001081c0
MOV RCX,qword ptr [RSP + 0x10]
MOV RDX,RAX
XOR EAX,EAX
MOV ESI,dword ptr [RCX + 0x48]
MOV RDI,qword ptr [RCX + 0x40]
ADD RSP,0x28
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
JMP 0x0011db40
MOV EDI,0x67
CALL 0x00117220
SUB dword ptr [0x001e3ce0],0x1
JMP 0x00137fdd
MOV R12D,0x1
MOV EBP,0x1
JMP 0x001388e0
MOV EDI,0x66
MOV EBX,0x2
CALL 0x00117220
SUB dword ptr [0x001e3ce0],0x1
JMP 0x00137acf
OR byte ptr [RAX],0x10
JMP 0x00138326
MOV EDI,0x66
CALL 0x00117220
SUB dword ptr [0x001e3ce0],0x1
JMP 0x00137aca
MOV ESI,dword ptr [0x001e3cf0]
LEA EDX,[RSI + -0x2]
AND EDX,0xfffffffd
JZ 0x00138458
JMP 0x00138b60
MOV R9D,0x16b
JMP 0x00138ae1
MOV RAX,qword ptr [RSP + 0x10]
MOV RDX,qword ptr [RAX + 0x10]
MOV RAX,qword ptr [RAX + 0x38]
MOV qword ptr [RSP],RDX
SUB RDX,qword ptr [RSP + 0x18]
TEST RAX,RAX
JNZ 0x00138ced
JMP 0x00138cf2
ADD RDX,qword ptr [RAX + 0x10]
MOV RAX,qword ptr [RAX + 0x38]
TEST RAX,RAX
JZ 0x00138cf2
CMP RDI,RAX
JNZ 0x00138ce0
ADD RDX,RSI
JMP 0x00138aba
MOV R9D,0x18e
JMP 0x00138ae1
LEA RDX,[0x1537c0]
MOV ESI,0x1ed1
LEA RDI,[0x152046]
CALL 0x0011dd00
LEA RDX,[0x1537d0]
MOV ESI,0x1d62
LEA RDI,[0x152046]
CALL 0x0011dd00
LEA RDX,[0x1537e0]
MOV ESI,0x1e15
LEA RDI,[0x152046]
CALL 0x0011dd00
LEA RDX,[0x1537e0]
MOV ESI,0x1e3f
LEA RDI,[0x152046]
CALL 0x0011dd00
(translation_unit "/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */\n\nvoid FUN_001379a0(void)\n\n{\n  long lVar1;\n  byte bVar2;\n  byte bVar3;\n  int iVar4;\n  undefined4 uVar5;\n  long lVar6;\n  undefined1 *puVar7;\n  byte *pbVar8;\n  ulong uVar9;\n  undefined1 *puVar10;\n  undefined8 uVar11;\n  undefined8 uVar12;\n  byte *pbVar13;\n  long *plVar14;\n  byte bVar15;\n  long lVar16;\n  long lVar17;\n  long lVar18;\n  char cVar19;\n  int iVar20;\n  uint uVar21;\n  uint uVar22;\n  long lVar23;\n  char *pcVar24;\n  char cVar25;\n  long lVar26;\n  char cVar27;\n  ulong uVar28;\n  bool bVar29;\n  ulong uVar30;\n  \n  FUN_0010e9f0(0);\n  lVar1 = DAT_001e4648;\n  lVar6 = FUN_001171d0();\n  iVar4 = DAT_001e3c9c;\n  if ((DAT_001e3be8 & 0x20) != 0) {\n    bVar15 = (DAT_001e3d40 == 2) * '\x02';\n    if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }\n    cVar25 = DAT_001e3ce7 != '\0';\n    cVar27 = cVar19;\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }\n    cVar19 = cVar27;\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    FUN_00116e70(cVar25 + '\x06');\n    pbVar8 = (byte *)FUN_00116fb0(cVar19);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }\n    bVar2 = (byte)DAT_001e3bcc;\n    *pbVar8 = bVar2;\n    bVar3 = bVar15;\n    if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }\n    if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }\n    FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);\n    return;\n  }\n  if ((DAT_001e3be8 & 0xc0) != 0) {\n    if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }\nLAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);\n    puVar10 = puVar7;\n    if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }\n    *puVar10 = (char)DAT_001e3bcc;\n    if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }\n    uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);\n    pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);\n    if (iVar20 != 1) {\n      return;\n    }\n    *pbVar8 = *pbVar8 | 0x80;\n    return;\n  }\n  if ((DAT_001e3be9 & 1) != 0) {\n    if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }\n    uVar21 = (uint)(DAT_001e3ce7 != '\0');\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }\n    iVar4 = (-(uint)!bVar29 & 2) + 2;\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    pbVar13 = pbVar8 + 1;\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }\n    *pbVar8 = (byte)DAT_001e3bcc;\n    if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }\n    uVar11 = DAT_001e3bc0;\n    if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }\n    uVar11 = DAT_001e3c60[2];\n    uVar12 = 2;\n    pbVar13 = pbVar13 + iVar4;\nLAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);\n    return;\n  }\n  if ((DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae)) {\n    if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }\n  }\n  else {\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }\n  if ((_DAT_001e3bec & 0x7000600) != 0) {\n    lVar23 = 0;\n    do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);\n    if (DAT_001e3cfc != 0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    lVar23 = FUN_00116fb0(DAT_001e3d14);\n    if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }\n    goto LAB_00137e10;\n  }\n  if (DAT_001e3bd4 != 1) {\n    if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }\n    if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }\n  }\n  if ((((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0)) {\n    FUN_00131f90(0x40);\n  }\n  pcVar24 = &DAT_001e3ce4;\n  do {\n    while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }\n    FUN_00117220();\n    pcVar24 = pcVar24 + 1;\n  } while (pcVar24 != &DAT_001e3ceb);\nLAB_00137e10:\n  if (DAT_001e3bd4 == 1) {\n    FUN_00117220(DAT_001e3bcc);\n  }\n  else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }\n  if ((((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))\n     ) {\n    FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);\n  }\n  if (DAT_001e3c2c != 0) {\n    if (DAT_001e3c24 == 0) {\n      return;\n    }\n    uVar28 = 0;\n    uVar21 = DAT_001e3c24;\n    do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);\n  }\n  if ((DAT_001e3c34 != 0) && (DAT_001e3c24 != 0)) {\nLAB_00137e9a:\n    uVar28 = 0;\n    do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);\n  }\n  return;\n}\n\n" comment (function_definition "void FUN_001379a0(void)\n\n{\n  long lVar1;\n  byte bVar2;\n  byte bVar3;\n  int iVar4;\n  undefined4 uVar5;\n  long lVar6;\n  undefined1 *puVar7;\n  byte *pbVar8;\n  ulong uVar9;\n  undefined1 *puVar10;\n  undefined8 uVar11;\n  undefined8 uVar12;\n  byte *pbVar13;\n  long *plVar14;\n  byte bVar15;\n  long lVar16;\n  long lVar17;\n  long lVar18;\n  char cVar19;\n  int iVar20;\n  uint uVar21;\n  uint uVar22;\n  long lVar23;\n  char *pcVar24;\n  char cVar25;\n  long lVar26;\n  char cVar27;\n  ulong uVar28;\n  bool bVar29;\n  ulong uVar30;\n  \n  FUN_0010e9f0(0);\n  lVar1 = DAT_001e4648;\n  lVar6 = FUN_001171d0();\n  iVar4 = DAT_001e3c9c;\n  if ((DAT_001e3be8 & 0x20) != 0) {\n    bVar15 = (DAT_001e3d40 == 2) * '\x02';\n    if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }\n    cVar25 = DAT_001e3ce7 != '\0';\n    cVar27 = cVar19;\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }\n    cVar19 = cVar27;\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    FUN_00116e70(cVar25 + '\x06');\n    pbVar8 = (byte *)FUN_00116fb0(cVar19);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }\n    bVar2 = (byte)DAT_001e3bcc;\n    *pbVar8 = bVar2;\n    bVar3 = bVar15;\n    if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }\n    if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }\n    FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);\n    return;\n  }\n  if ((DAT_001e3be8 & 0xc0) != 0) {\n    if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }\nLAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);\n    puVar10 = puVar7;\n    if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }\n    *puVar10 = (char)DAT_001e3bcc;\n    if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }\n    uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);\n    pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);\n    if (iVar20 != 1) {\n      return;\n    }\n    *pbVar8 = *pbVar8 | 0x80;\n    return;\n  }\n  if ((DAT_001e3be9 & 1) != 0) {\n    if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }\n    uVar21 = (uint)(DAT_001e3ce7 != '\0');\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }\n    iVar4 = (-(uint)!bVar29 & 2) + 2;\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    pbVar13 = pbVar8 + 1;\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }\n    *pbVar8 = (byte)DAT_001e3bcc;\n    if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }\n    uVar11 = DAT_001e3bc0;\n    if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }\n    uVar11 = DAT_001e3c60[2];\n    uVar12 = 2;\n    pbVar13 = pbVar13 + iVar4;\nLAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);\n    return;\n  }\n  if ((DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae)) {\n    if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }\n  }\n  else {\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }\n  if ((_DAT_001e3bec & 0x7000600) != 0) {\n    lVar23 = 0;\n    do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);\n    if (DAT_001e3cfc != 0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    lVar23 = FUN_00116fb0(DAT_001e3d14);\n    if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }\n    goto LAB_00137e10;\n  }\n  if (DAT_001e3bd4 != 1) {\n    if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }\n    if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }\n  }\n  if ((((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0)) {\n    FUN_00131f90(0x40);\n  }\n  pcVar24 = &DAT_001e3ce4;\n  do {\n    while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }\n    FUN_00117220();\n    pcVar24 = pcVar24 + 1;\n  } while (pcVar24 != &DAT_001e3ceb);\nLAB_00137e10:\n  if (DAT_001e3bd4 == 1) {\n    FUN_00117220(DAT_001e3bcc);\n  }\n  else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }\n  if ((((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))\n     ) {\n    FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);\n  }\n  if (DAT_001e3c2c != 0) {\n    if (DAT_001e3c24 == 0) {\n      return;\n    }\n    uVar28 = 0;\n    uVar21 = DAT_001e3c24;\n    do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);\n  }\n  if ((DAT_001e3c34 != 0) && (DAT_001e3c24 != 0)) {\nLAB_00137e9a:\n    uVar28 = 0;\n    do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);\n  }\n  return;\n}" primitive_type (function_declarator "FUN_001379a0(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  long lVar1;\n  byte bVar2;\n  byte bVar3;\n  int iVar4;\n  undefined4 uVar5;\n  long lVar6;\n  undefined1 *puVar7;\n  byte *pbVar8;\n  ulong uVar9;\n  undefined1 *puVar10;\n  undefined8 uVar11;\n  undefined8 uVar12;\n  byte *pbVar13;\n  long *plVar14;\n  byte bVar15;\n  long lVar16;\n  long lVar17;\n  long lVar18;\n  char cVar19;\n  int iVar20;\n  uint uVar21;\n  uint uVar22;\n  long lVar23;\n  char *pcVar24;\n  char cVar25;\n  long lVar26;\n  char cVar27;\n  ulong uVar28;\n  bool bVar29;\n  ulong uVar30;\n  \n  FUN_0010e9f0(0);\n  lVar1 = DAT_001e4648;\n  lVar6 = FUN_001171d0();\n  iVar4 = DAT_001e3c9c;\n  if ((DAT_001e3be8 & 0x20) != 0) {\n    bVar15 = (DAT_001e3d40 == 2) * '\x02';\n    if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }\n    cVar25 = DAT_001e3ce7 != '\0';\n    cVar27 = cVar19;\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }\n    cVar19 = cVar27;\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    FUN_00116e70(cVar25 + '\x06');\n    pbVar8 = (byte *)FUN_00116fb0(cVar19);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }\n    bVar2 = (byte)DAT_001e3bcc;\n    *pbVar8 = bVar2;\n    bVar3 = bVar15;\n    if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }\n    if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }\n    FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);\n    return;\n  }\n  if ((DAT_001e3be8 & 0xc0) != 0) {\n    if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }\nLAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);\n    puVar10 = puVar7;\n    if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }\n    *puVar10 = (char)DAT_001e3bcc;\n    if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }\n    uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);\n    pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);\n    if (iVar20 != 1) {\n      return;\n    }\n    *pbVar8 = *pbVar8 | 0x80;\n    return;\n  }\n  if ((DAT_001e3be9 & 1) != 0) {\n    if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }\n    uVar21 = (uint)(DAT_001e3ce7 != '\0');\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }\n    iVar4 = (-(uint)!bVar29 & 2) + 2;\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    pbVar13 = pbVar8 + 1;\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }\n    *pbVar8 = (byte)DAT_001e3bcc;\n    if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }\n    uVar11 = DAT_001e3bc0;\n    if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }\n    uVar11 = DAT_001e3c60[2];\n    uVar12 = 2;\n    pbVar13 = pbVar13 + iVar4;\nLAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);\n    return;\n  }\n  if ((DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae)) {\n    if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }\n  }\n  else {\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }\n  if ((_DAT_001e3bec & 0x7000600) != 0) {\n    lVar23 = 0;\n    do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);\n    if (DAT_001e3cfc != 0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    lVar23 = FUN_00116fb0(DAT_001e3d14);\n    if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }\n    goto LAB_00137e10;\n  }\n  if (DAT_001e3bd4 != 1) {\n    if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }\n    if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }\n  }\n  if ((((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0)) {\n    FUN_00131f90(0x40);\n  }\n  pcVar24 = &DAT_001e3ce4;\n  do {\n    while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }\n    FUN_00117220();\n    pcVar24 = pcVar24 + 1;\n  } while (pcVar24 != &DAT_001e3ceb);\nLAB_00137e10:\n  if (DAT_001e3bd4 == 1) {\n    FUN_00117220(DAT_001e3bcc);\n  }\n  else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }\n  if ((((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))\n     ) {\n    FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);\n  }\n  if (DAT_001e3c2c != 0) {\n    if (DAT_001e3c24 == 0) {\n      return;\n    }\n    uVar28 = 0;\n    uVar21 = DAT_001e3c24;\n    do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);\n  }\n  if ((DAT_001e3c34 != 0) && (DAT_001e3c24 != 0)) {\nLAB_00137e9a:\n    uVar28 = 0;\n    do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);\n  }\n  return;\n}" { (declaration "long lVar1;" (sized_type_specifier "long" long) identifier ;) (declaration "byte bVar2;" type_identifier identifier ;) (declaration "byte bVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "undefined4 uVar5;" type_identifier identifier ;) (declaration "long lVar6;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined1 *puVar7;" type_identifier (pointer_declarator "*puVar7" * identifier) ;) (declaration "byte *pbVar8;" type_identifier (pointer_declarator "*pbVar8" * identifier) ;) (declaration "ulong uVar9;" type_identifier identifier ;) (declaration "undefined1 *puVar10;" type_identifier (pointer_declarator "*puVar10" * identifier) ;) (declaration "undefined8 uVar11;" type_identifier identifier ;) (declaration "undefined8 uVar12;" type_identifier identifier ;) (declaration "byte *pbVar13;" type_identifier (pointer_declarator "*pbVar13" * identifier) ;) (declaration "long *plVar14;" (sized_type_specifier "long" long) (pointer_declarator "*plVar14" * identifier) ;) (declaration "byte bVar15;" type_identifier identifier ;) (declaration "long lVar16;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar17;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar18;" (sized_type_specifier "long" long) identifier ;) (declaration "char cVar19;" primitive_type identifier ;) (declaration "int iVar20;" primitive_type identifier ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "long lVar23;" (sized_type_specifier "long" long) identifier ;) (declaration "char *pcVar24;" primitive_type (pointer_declarator "*pcVar24" * identifier) ;) (declaration "char cVar25;" primitive_type identifier ;) (declaration "long lVar26;" (sized_type_specifier "long" long) identifier ;) (declaration "char cVar27;" primitive_type identifier ;) (declaration "ulong uVar28;" type_identifier identifier ;) (declaration "bool bVar29;" primitive_type identifier ;) (declaration "ulong uVar30;" type_identifier identifier ;) (expression_statement "FUN_0010e9f0(0);" (call_expression "FUN_0010e9f0(0)" identifier (argument_list "(0)" ( number_literal ))) ;) (expression_statement "lVar1 = DAT_001e4648;" (assignment_expression "lVar1 = DAT_001e4648" identifier = identifier) ;) (expression_statement "lVar6 = FUN_001171d0();" (assignment_expression "lVar6 = FUN_001171d0()" identifier = (call_expression "FUN_001171d0()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar4 = DAT_001e3c9c;" (assignment_expression "iVar4 = DAT_001e3c9c" identifier = identifier) ;) (if_statement "if ((DAT_001e3be8 & 0x20) != 0) {\n    bVar15 = (DAT_001e3d40 == 2) * '\x02';\n    if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }\n    cVar25 = DAT_001e3ce7 != '\0';\n    cVar27 = cVar19;\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }\n    cVar19 = cVar27;\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    FUN_00116e70(cVar25 + '\x06');\n    pbVar8 = (byte *)FUN_00116fb0(cVar19);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }\n    bVar2 = (byte)DAT_001e3bcc;\n    *pbVar8 = bVar2;\n    bVar3 = bVar15;\n    if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }\n    if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }\n    FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);\n    return;\n  }" if (parenthesized_expression "((DAT_001e3be8 & 0x20) != 0)" ( (binary_expression "(DAT_001e3be8 & 0x20) != 0" (parenthesized_expression "(DAT_001e3be8 & 0x20)" ( (binary_expression "DAT_001e3be8 & 0x20" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n    bVar15 = (DAT_001e3d40 == 2) * '\x02';\n    if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }\n    cVar25 = DAT_001e3ce7 != '\0';\n    cVar27 = cVar19;\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }\n    cVar19 = cVar27;\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    FUN_00116e70(cVar25 + '\x06');\n    pbVar8 = (byte *)FUN_00116fb0(cVar19);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }\n    bVar2 = (byte)DAT_001e3bcc;\n    *pbVar8 = bVar2;\n    bVar3 = bVar15;\n    if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }\n    if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }\n    FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);\n    return;\n  }" { (expression_statement "bVar15 = (DAT_001e3d40 == 2) * '\x02';" (assignment_expression "bVar15 = (DAT_001e3d40 == 2) * '\x02'" identifier = (binary_expression "(DAT_001e3d40 == 2) * '\x02'" (parenthesized_expression "(DAT_001e3d40 == 2)" ( (binary_expression "DAT_001e3d40 == 2" identifier == number_literal) )) * (char_literal "'\x02'" ' escape_sequence '))) ;) (if_statement "if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }" if (parenthesized_expression "(DAT_001e3ce7 != '\0')" ( (binary_expression "DAT_001e3ce7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }" { (expression_statement "cVar19 = '\x02';" (assignment_expression "cVar19 = '\x02'" identifier = (char_literal "'\x02'" ' escape_sequence ')) ;) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) (expression_statement "bVar29 = DAT_001e3b14 != 1;" (assignment_expression "bVar29 = DAT_001e3b14 != 1" identifier = (binary_expression "DAT_001e3b14 != 1" identifier != number_literal)) ;) }) (else_clause "else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }" else (compound_statement "{\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }" { (expression_statement "bVar29 = DAT_001e3b14 == 1;" (assignment_expression "bVar29 = DAT_001e3b14 == 1" identifier = (binary_expression "DAT_001e3b14 == 1" identifier == number_literal)) ;) (expression_statement "cVar19 = '\x01';" (assignment_expression "cVar19 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) }))) (expression_statement "cVar25 = DAT_001e3ce7 != '\0';" (assignment_expression "cVar25 = DAT_001e3ce7 != '\0'" identifier = (binary_expression "DAT_001e3ce7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))) ;) (expression_statement "cVar27 = cVar19;" (assignment_expression "cVar27 = cVar19" identifier = identifier) ;) (if_statement "if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }" if (parenthesized_expression "((DAT_001e3ce5 & 0xef) == 0x2e)" ( (binary_expression "(DAT_001e3ce5 & 0xef) == 0x2e" (parenthesized_expression "(DAT_001e3ce5 & 0xef)" ( (binary_expression "DAT_001e3ce5 & 0xef" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }" { (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) (expression_statement "cVar27 = cVar19 + '\x01';" (assignment_expression "cVar27 = cVar19 + '\x01'" identifier = (binary_expression "cVar19 + '\x01'" identifier + (char_literal "'\x01'" ' escape_sequence '))) ;) (expression_statement "cVar25 = cVar19;" (assignment_expression "cVar25 = cVar19" identifier = identifier) ;) })) (expression_statement "cVar19 = cVar27;" (assignment_expression "cVar19 = cVar27" identifier = identifier) ;) (if_statement "if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }" if (parenthesized_expression "(DAT_001e3cea != 0)" ( (binary_expression "DAT_001e3cea != 0" identifier != number_literal) )) (compound_statement "{\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }" { (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) (expression_statement "cVar19 = cVar27 + '\x01';" (assignment_expression "cVar19 = cVar27 + '\x01'" identifier = (binary_expression "cVar27 + '\x01'" identifier + (char_literal "'\x01'" ' escape_sequence '))) ;) (expression_statement "cVar25 = cVar27;" (assignment_expression "cVar25 = cVar27" identifier = identifier) ;) })) (if_statement "if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" if (parenthesized_expression "(DAT_001e3ce8 != '\0')" ( (binary_expression "DAT_001e3ce8 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" { (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" identifier (argument_list "()" ( ))) ;) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) })) (if_statement "if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" if (parenthesized_expression "((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0))" ( (binary_expression "(DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)" (parenthesized_expression "(DAT_001e3ce0 != 0)" ( (binary_expression "DAT_001e3ce0 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_001e3afc == 0)" ( (binary_expression "DAT_001e3afc == 0" identifier == number_literal) ))) )) (compound_statement "{\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" { (expression_statement "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);" (assignment_expression "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5)" identifier = (call_expression "dcgettext(0,"skipping prefixes on this instruction",5)" identifier (argument_list "(0,"skipping prefixes on this instruction",5)" ( number_literal , (string_literal ""skipping prefixes on this instruction"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011d8a0(uVar11);" (call_expression "FUN_0011d8a0(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) })) (expression_statement "FUN_00116e70(cVar25 + '\x06');" (call_expression "FUN_00116e70(cVar25 + '\x06')" identifier (argument_list "(cVar25 + '\x06')" ( (binary_expression "cVar25 + '\x06'" identifier + (char_literal "'\x06'" ' escape_sequence ')) ))) ;) (expression_statement "pbVar8 = (byte *)FUN_00116fb0(cVar19);" (assignment_expression "pbVar8 = (byte *)FUN_00116fb0(cVar19)" identifier = (cast_expression "(byte *)FUN_00116fb0(cVar19)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00116fb0(cVar19)" identifier (argument_list "(cVar19)" ( identifier ))))) ;) (if_statement "if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }" if (parenthesized_expression "(DAT_001e3ce7 != '\0')" ( (binary_expression "DAT_001e3ce7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }" { (expression_statement "*pbVar8 = 0x66;" (assignment_expression "*pbVar8 = 0x66" (pointer_expression "*pbVar8" * identifier) = number_literal) ;) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" identifier = (binary_expression "pbVar8 + 1" identifier + number_literal)) ;) })) (if_statement "if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }" if (parenthesized_expression "((DAT_001e3ce5 & 0xef) == 0x2e)" ( (binary_expression "(DAT_001e3ce5 & 0xef) == 0x2e" (parenthesized_expression "(DAT_001e3ce5 & 0xef)" ( (binary_expression "DAT_001e3ce5 & 0xef" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }" { (expression_statement "*pbVar8 = DAT_001e3ce5;" (assignment_expression "*pbVar8 = DAT_001e3ce5" (pointer_expression "*pbVar8" * identifier) = identifier) ;) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" identifier = (binary_expression "pbVar8 + 1" identifier + number_literal)) ;) })) (if_statement "if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }" if (parenthesized_expression "(DAT_001e3cea != 0)" ( (binary_expression "DAT_001e3cea != 0" identifier != number_literal) )) (compound_statement "{\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }" { (expression_statement "*pbVar8 = DAT_001e3cea;" (assignment_expression "*pbVar8 = DAT_001e3cea" (pointer_expression "*pbVar8" * identifier) = identifier) ;) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" identifier = (binary_expression "pbVar8 + 1" identifier + number_literal)) ;) })) (expression_statement "bVar2 = (byte)DAT_001e3bcc;" (assignment_expression "bVar2 = (byte)DAT_001e3bcc" identifier = (cast_expression "(byte)DAT_001e3bcc" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (expression_statement "*pbVar8 = bVar2;" (assignment_expression "*pbVar8 = bVar2" (pointer_expression "*pbVar8" * identifier) = identifier) ;) (expression_statement "bVar3 = bVar15;" (assignment_expression "bVar3 = bVar15" identifier = identifier) ;) (if_statement "if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }" if (parenthesized_expression "(bVar2 != 0xeb)" ( (binary_expression "bVar2 != 0xeb" identifier != number_literal) )) (compound_statement "{\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }" { (expression_statement "bVar3 = bVar15 | 8;" (assignment_expression "bVar3 = bVar15 | 8" identifier = (binary_expression "bVar15 | 8" identifier | number_literal)) ;) (if_statement "if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }" if (parenthesized_expression "(((byte)DAT_001da770 & 4) != 0)" ( (binary_expression "((byte)DAT_001da770 & 4) != 0" (parenthesized_expression "((byte)DAT_001da770 & 4)" ( (binary_expression "(byte)DAT_001da770 & 4" (cast_expression "(byte)DAT_001da770" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n        bVar3 = bVar15 | 4;\n      }" { (expression_statement "bVar3 = bVar15 | 4;" (assignment_expression "bVar3 = bVar15 | 4" identifier = (binary_expression "bVar15 | 4" identifier | number_literal)) ;) })) })) (if_statement "if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }" if (parenthesized_expression "((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2)" ( (binary_expression "(byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2" (call_expression "(byte)(*(char *)(DAT_001e3c60 + 3) - 2U)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(*(char *)(DAT_001e3c60 + 3) - 2U)" ( (binary_expression "*(char *)(DAT_001e3c60 + 3) - 2U" (pointer_expression "*(char *)(DAT_001e3c60 + 3)" * (cast_expression "(char *)(DAT_001e3c60 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_001e3c60 + 3)" ( (binary_expression "DAT_001e3c60 + 3" identifier + number_literal) )))) - number_literal) ))) < number_literal) )) (compound_statement "{\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }" { (expression_statement "uVar11 = *DAT_001e3c60;" (assignment_expression "uVar11 = *DAT_001e3c60" identifier = (pointer_expression "*DAT_001e3c60" * identifier)) ;) (expression_statement "uVar12 = DAT_001e3c60[2];" (assignment_expression "uVar12 = DAT_001e3c60[2]" identifier = (subscript_expression "DAT_001e3c60[2]" identifier [ number_literal ])) ;) }) (else_clause "else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }" else (compound_statement "{\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }" { (expression_statement "uVar11 = FUN_00113ee0();" (assignment_expression "uVar11 = FUN_00113ee0()" identifier = (call_expression "FUN_00113ee0()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) }))) (expression_statement "FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);" (call_expression "FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8)" identifier (argument_list "(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8)" ( number_literal , number_literal , identifier , (binary_expression "bVar3 | bVar29" identifier | identifier) , identifier , identifier , identifier ))) ;) (return_statement "return;" return ;) })) (if_statement "if ((DAT_001e3be8 & 0xc0) != 0) {\n    if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }\nLAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);\n    puVar10 = puVar7;\n    if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }\n    *puVar10 = (char)DAT_001e3bcc;\n    if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }\n    uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);\n    pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);\n    if (iVar20 != 1) {\n      return;\n    }\n    *pbVar8 = *pbVar8 | 0x80;\n    return;\n  }" if (parenthesized_expression "((DAT_001e3be8 & 0xc0) != 0)" ( (binary_expression "(DAT_001e3be8 & 0xc0) != 0" (parenthesized_expression "(DAT_001e3be8 & 0xc0)" ( (binary_expression "DAT_001e3be8 & 0xc0" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n    if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }\nLAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);\n    puVar10 = puVar7;\n    if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }\n    *puVar10 = (char)DAT_001e3bcc;\n    if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }\n    uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);\n    pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);\n    if (iVar20 != 1) {\n      return;\n    }\n    *pbVar8 = *pbVar8 | 0x80;\n    return;\n  }" { (if_statement "if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }" if (parenthesized_expression "((char)DAT_001e3be8 < '\0')" ( (binary_expression "(char)DAT_001e3be8 < '\0'" (cast_expression "(char)DAT_001e3be8" ( (type_descriptor "char" primitive_type) ) identifier) < (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }" { (if_statement "if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }" if (parenthesized_expression "(DAT_001e3ce6 != '\0')" ( (binary_expression "DAT_001e3ce6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }" { (expression_statement "FUN_00117220(0x67);" (call_expression "FUN_00117220(0x67)" identifier (argument_list "(0x67)" ( number_literal ))) ;) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) })) (expression_statement "iVar20 = 1;" (assignment_expression "iVar20 = 1" identifier = number_literal) ;) (if_statement "if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }" if (parenthesized_expression "((DAT_001e3ce5 & 0xef) == 0x2e)" ( (binary_expression "(DAT_001e3ce5 & 0xef) == 0x2e" (parenthesized_expression "(DAT_001e3ce5 & 0xef)" ( (binary_expression "DAT_001e3ce5 & 0xef" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }" { (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" identifier (argument_list "()" ( ))) ;) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) })) }) (else_clause "else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }" else (compound_statement "{\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }" { (if_statement "if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }" if (parenthesized_expression "(DAT_001e3b14 == 1)" ( (binary_expression "DAT_001e3b14 == 1" identifier == number_literal) )) (compound_statement "{\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }" { (if_statement "if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }" if (parenthesized_expression "(DAT_001e3ce7 == '\0')" ( (binary_expression "DAT_001e3ce7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }" { (expression_statement "iVar20 = 2;" (assignment_expression "iVar20 = 2" identifier = number_literal) ;) (goto_statement "goto LAB_00137acf;" goto statement_identifier ;) })) (expression_statement "FUN_00117220(0x66);" (call_expression "FUN_00117220(0x66)" identifier (argument_list "(0x66)" ( number_literal ))) ;) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) }) (else_clause "else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }" else (if_statement "if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }" if (parenthesized_expression "(DAT_001e3ce7 != '\0')" ( (binary_expression "DAT_001e3ce7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }" { (expression_statement "iVar20 = 2;" (assignment_expression "iVar20 = 2" identifier = number_literal) ;) (expression_statement "FUN_00117220(0x66);" (call_expression "FUN_00117220(0x66)" identifier (argument_list "(0x66)" ( number_literal ))) ;) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) (goto_statement "goto LAB_00137acf;" goto statement_identifier ;) })))) (expression_statement "iVar20 = 4;" (assignment_expression "iVar20 = 4" identifier = number_literal) ;) }))) (labeled_statement "LAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" statement_identifier : (if_statement "if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" if (parenthesized_expression "(DAT_001e3cea != 0)" ( (binary_expression "DAT_001e3cea != 0" identifier != number_literal) )) (compound_statement "{\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" { (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" identifier (argument_list "()" ( ))) ;) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) }))) (if_statement "if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" if (parenthesized_expression "(DAT_001e3ce8 != '\0')" ( (binary_expression "DAT_001e3ce8 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" { (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" identifier (argument_list "()" ( ))) ;) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) })) (if_statement "if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" if (parenthesized_expression "((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0))" ( (binary_expression "(DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)" (parenthesized_expression "(DAT_001e3ce0 != 0)" ( (binary_expression "DAT_001e3ce0 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_001e3afc == 0)" ( (binary_expression "DAT_001e3afc == 0" identifier == number_literal) ))) )) (compound_statement "{\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" { (expression_statement "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);" (assignment_expression "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5)" identifier = (call_expression "dcgettext(0,"skipping prefixes on this instruction",5)" identifier (argument_list "(0,"skipping prefixes on this instruction",5)" ( number_literal , (string_literal ""skipping prefixes on this instruction"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011d8a0(uVar11);" (call_expression "FUN_0011d8a0(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) })) (expression_statement "puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);" (assignment_expression "puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20)" identifier = (cast_expression "(undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00116fb0((uint)DAT_001e3bd4 + iVar20)" identifier (argument_list "((uint)DAT_001e3bd4 + iVar20)" ( (binary_expression "(uint)DAT_001e3bd4 + iVar20" (cast_expression "(uint)DAT_001e3bd4" ( (type_descriptor "uint" type_identifier) ) identifier) + identifier) ))))) ;) (expression_statement "puVar10 = puVar7;" (assignment_expression "puVar10 = puVar7" identifier = identifier) ;) (if_statement "if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }" if (parenthesized_expression "(DAT_001e3bd4 != 1)" ( (binary_expression "DAT_001e3bd4 != 1" identifier != number_literal) )) (compound_statement "{\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }" { (if_statement "if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }" if (parenthesized_expression "(DAT_001e3bd4 != 2)" ( (binary_expression "DAT_001e3bd4 != 2" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }" { comment (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1d62,"output_jump")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_jump"" " string_content ") ))) ;) })) (expression_statement "puVar10 = puVar7 + 1;" (assignment_expression "puVar10 = puVar7 + 1" identifier = (binary_expression "puVar7 + 1" identifier + number_literal)) ;) (expression_statement "*puVar7 = (char)(DAT_001e3bcc >> 8);" (assignment_expression "*puVar7 = (char)(DAT_001e3bcc >> 8)" (pointer_expression "*puVar7" * identifier) = (cast_expression "(char)(DAT_001e3bcc >> 8)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(DAT_001e3bcc >> 8)" ( (binary_expression "DAT_001e3bcc >> 8" identifier >> number_literal) )))) ;) })) (expression_statement "*puVar10 = (char)DAT_001e3bcc;" (assignment_expression "*puVar10 = (char)DAT_001e3bcc" (pointer_expression "*puVar10" * identifier) = (cast_expression "(char)DAT_001e3bcc" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (if_statement "if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }" if (parenthesized_expression "((iVar20 == 4) && (iVar4 == 0x47))" ( (binary_expression "(iVar20 == 4) && (iVar4 == 0x47)" (parenthesized_expression "(iVar20 == 4)" ( (binary_expression "iVar20 == 4" identifier == number_literal) )) && (parenthesized_expression "(iVar4 == 0x47)" ( (binary_expression "iVar4 == 0x47" identifier == number_literal) ))) )) (compound_statement "{\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }" { (expression_statement "iVar4 = FUN_00136e70(*DAT_001e3c60);" (assignment_expression "iVar4 = FUN_00136e70(*DAT_001e3c60)" identifier = (call_expression "FUN_00136e70(*DAT_001e3c60)" identifier (argument_list "(*DAT_001e3c60)" ( (pointer_expression "*DAT_001e3c60" * identifier) )))) ;) (expression_statement "uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);" (assignment_expression "uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e)" identifier = (call_expression "FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e)" identifier (argument_list "(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e)" ( number_literal , number_literal , number_literal , (binary_expression "(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e" (parenthesized_expression "(-(uint)(iVar4 == 0) & 0xfffffec9)" ( (binary_expression "-(uint)(iVar4 == 0) & 0xfffffec9" (unary_expression "-(uint)(iVar4 == 0)" - (call_expression "(uint)(iVar4 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )))) & number_literal) )) + number_literal) )))) ;) (expression_statement "FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);" (call_expression "FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5)" identifier (argument_list "(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5)" ( identifier , (binary_expression "puVar10 + (1 - (DAT_001e4648 + 0x80))" identifier + (parenthesized_expression "(1 - (DAT_001e4648 + 0x80))" ( (binary_expression "1 - (DAT_001e4648 + 0x80)" number_literal - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) ))) ))) , number_literal , identifier , number_literal , identifier ))) ;) (return_statement "return;" return ;) })) (expression_statement "uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);" (assignment_expression "uVar5 = FUN_00134ea0(iVar20,1,1,iVar4)" identifier = (call_expression "FUN_00134ea0(iVar20,1,1,iVar4)" identifier (argument_list "(iVar20,1,1,iVar4)" ( identifier , number_literal , number_literal , identifier )))) ;) (expression_statement "pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);" (assignment_expression "pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5)" identifier = (cast_expression "(byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5)" identifier (argument_list "(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5)" ( identifier , (binary_expression "puVar10 + (1 - (DAT_001e4648 + 0x80))" identifier + (parenthesized_expression "(1 - (DAT_001e4648 + 0x80))" ( (binary_expression "1 - (DAT_001e4648 + 0x80)" number_literal - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) ))) ))) , identifier , identifier , number_literal , identifier ))))) ;) (if_statement "if (iVar20 != 1) {\n      return;\n    }" if (parenthesized_expression "(iVar20 != 1)" ( (binary_expression "iVar20 != 1" identifier != number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "*pbVar8 = *pbVar8 | 0x80;" (assignment_expression "*pbVar8 = *pbVar8 | 0x80" (pointer_expression "*pbVar8" * identifier) = (binary_expression "*pbVar8 | 0x80" (pointer_expression "*pbVar8" * identifier) | number_literal)) ;) (return_statement "return;" return ;) })) (if_statement "if ((DAT_001e3be9 & 1) != 0) {\n    if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }\n    uVar21 = (uint)(DAT_001e3ce7 != '\0');\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }\n    iVar4 = (-(uint)!bVar29 & 2) + 2;\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    pbVar13 = pbVar8 + 1;\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }\n    *pbVar8 = (byte)DAT_001e3bcc;\n    if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }\n    uVar11 = DAT_001e3bc0;\n    if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }\n    uVar11 = DAT_001e3c60[2];\n    uVar12 = 2;\n    pbVar13 = pbVar13 + iVar4;\nLAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);\n    return;\n  }" if (parenthesized_expression "((DAT_001e3be9 & 1) != 0)" ( (binary_expression "(DAT_001e3be9 & 1) != 0" (parenthesized_expression "(DAT_001e3be9 & 1)" ( (binary_expression "DAT_001e3be9 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n    if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }\n    uVar21 = (uint)(DAT_001e3ce7 != '\0');\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }\n    iVar4 = (-(uint)!bVar29 & 2) + 2;\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    pbVar13 = pbVar8 + 1;\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }\n    *pbVar8 = (byte)DAT_001e3bcc;\n    if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }\n    uVar11 = DAT_001e3bc0;\n    if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }\n    uVar11 = DAT_001e3c60[2];\n    uVar12 = 2;\n    pbVar13 = pbVar13 + iVar4;\nLAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);\n    return;\n  }" { (if_statement "if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }" if (parenthesized_expression "(DAT_001e3ce7 != '\0')" ( (binary_expression "DAT_001e3ce7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }" { (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) (expression_statement "bVar29 = DAT_001e3b14 != 1;" (assignment_expression "bVar29 = DAT_001e3b14 != 1" identifier = (binary_expression "DAT_001e3b14 != 1" identifier != number_literal)) ;) }) (else_clause "else {\n      bVar29 = DAT_001e3b14 == 1;\n    }" else (compound_statement "{\n      bVar29 = DAT_001e3b14 == 1;\n    }" { (expression_statement "bVar29 = DAT_001e3b14 == 1;" (assignment_expression "bVar29 = DAT_001e3b14 == 1" identifier = (binary_expression "DAT_001e3b14 == 1" identifier == number_literal)) ;) }))) (expression_statement "uVar21 = (uint)(DAT_001e3ce7 != '\0');" (assignment_expression "uVar21 = (uint)(DAT_001e3ce7 != '\0')" identifier = (call_expression "(uint)(DAT_001e3ce7 != '\0')" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(DAT_001e3ce7 != '\0')" ( (binary_expression "DAT_001e3ce7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )))) ;) (if_statement "if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }" if (parenthesized_expression "(DAT_001e3cea != 0)" ( (binary_expression "DAT_001e3cea != 0" identifier != number_literal) )) (compound_statement "{\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }" { (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) (expression_statement "uVar21 = uVar21 + 1;" (assignment_expression "uVar21 = uVar21 + 1" identifier = (binary_expression "uVar21 + 1" identifier + number_literal)) ;) })) (expression_statement "iVar4 = (-(uint)!bVar29 & 2) + 2;" (assignment_expression "iVar4 = (-(uint)!bVar29 & 2) + 2" identifier = (binary_expression "(-(uint)!bVar29 & 2) + 2" (parenthesized_expression "(-(uint)!bVar29 & 2)" ( (binary_expression "-(uint)!bVar29 & 2" (unary_expression "-(uint)!bVar29" - (cast_expression "(uint)!bVar29" ( (type_descriptor "uint" type_identifier) ) (unary_expression "!bVar29" ! identifier))) & number_literal) )) + number_literal)) ;) (if_statement "if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" if (parenthesized_expression "((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0))" ( (binary_expression "(DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)" (parenthesized_expression "(DAT_001e3ce0 != 0)" ( (binary_expression "DAT_001e3ce0 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_001e3afc == 0)" ( (binary_expression "DAT_001e3afc == 0" identifier == number_literal) ))) )) (compound_statement "{\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" { (expression_statement "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);" (assignment_expression "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5)" identifier = (call_expression "dcgettext(0,"skipping prefixes on this instruction",5)" identifier (argument_list "(0,"skipping prefixes on this instruction",5)" ( number_literal , (string_literal ""skipping prefixes on this instruction"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011d8a0(uVar11);" (call_expression "FUN_0011d8a0(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) })) (expression_statement "pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);" (assignment_expression "pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4)" identifier = (cast_expression "(byte *)FUN_00116fb0(uVar21 + 3 + iVar4)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00116fb0(uVar21 + 3 + iVar4)" identifier (argument_list "(uVar21 + 3 + iVar4)" ( (binary_expression "uVar21 + 3 + iVar4" (binary_expression "uVar21 + 3" identifier + number_literal) + identifier) ))))) ;) (if_statement "if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }" if (parenthesized_expression "(DAT_001e3ce7 != '\0')" ( (binary_expression "DAT_001e3ce7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }" { (expression_statement "*pbVar8 = 0x66;" (assignment_expression "*pbVar8 = 0x66" (pointer_expression "*pbVar8" * identifier) = number_literal) ;) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" identifier = (binary_expression "pbVar8 + 1" identifier + number_literal)) ;) })) (expression_statement "pbVar13 = pbVar8 + 1;" (assignment_expression "pbVar13 = pbVar8 + 1" identifier = (binary_expression "pbVar8 + 1" identifier + number_literal)) ;) (if_statement "if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }" if (parenthesized_expression "(DAT_001e3cea != 0)" ( (binary_expression "DAT_001e3cea != 0" identifier != number_literal) )) (compound_statement "{\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }" { (expression_statement "*pbVar8 = DAT_001e3cea;" (assignment_expression "*pbVar8 = DAT_001e3cea" (pointer_expression "*pbVar8" * identifier) = identifier) ;) (expression_statement "pbVar13 = pbVar8 + 2;" (assignment_expression "pbVar13 = pbVar8 + 2" identifier = (binary_expression "pbVar8 + 2" identifier + number_literal)) ;) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" identifier = (binary_expression "pbVar8 + 1" identifier + number_literal)) ;) })) (expression_statement "*pbVar8 = (byte)DAT_001e3bcc;" (assignment_expression "*pbVar8 = (byte)DAT_001e3bcc" (pointer_expression "*pbVar8" * identifier) = (cast_expression "(byte)DAT_001e3bcc" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (if_statement "if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }" if (parenthesized_expression "(*(char *)(DAT_001e3c68 + 0x18) == '\x02')" ( (binary_expression "*(char *)(DAT_001e3c68 + 0x18) == '\x02'" (pointer_expression "*(char *)(DAT_001e3c68 + 0x18)" * (cast_expression "(char *)(DAT_001e3c68 + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_001e3c68 + 0x18)" ( (binary_expression "DAT_001e3c68 + 0x18" identifier + number_literal) )))) == (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }" { (expression_statement "uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);" (assignment_expression "uVar28 = *(ulong *)(DAT_001e3c68 + 0x10)" identifier = (pointer_expression "*(ulong *)(DAT_001e3c68 + 0x10)" * (cast_expression "(ulong *)(DAT_001e3c68 + 0x10)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_001e3c68 + 0x10)" ( (binary_expression "DAT_001e3c68 + 0x10" identifier + number_literal) ))))) ;) (if_statement "if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }" if (parenthesized_expression "(((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000))" ( (binary_expression "((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)" (parenthesized_expression "((iVar4 == 2) && (0xffff < uVar28))" ( (binary_expression "(iVar4 == 2) && (0xffff < uVar28)" (parenthesized_expression "(iVar4 == 2)" ( (binary_expression "iVar4 == 2" identifier == number_literal) )) && (parenthesized_expression "(0xffff < uVar28)" ( (binary_expression "0xffff < uVar28" number_literal < identifier) ))) )) && (parenthesized_expression "(0xffff < uVar28 + 0x8000)" ( (binary_expression "0xffff < uVar28 + 0x8000" number_literal < (binary_expression "uVar28 + 0x8000" identifier + number_literal)) ))) )) (compound_statement "{\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }" { (expression_statement "uVar11 = dcgettext(0,"16-bit jump out of range",5);" (assignment_expression "uVar11 = dcgettext(0,"16-bit jump out of range",5)" identifier = (call_expression "dcgettext(0,"16-bit jump out of range",5)" identifier (argument_list "(0,"16-bit jump out of range",5)" ( number_literal , (string_literal ""16-bit jump out of range"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011da70(uVar11);" (call_expression "FUN_0011da70(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (return_statement "return;" return ;) })) (expression_statement "FUN_00131030(pbVar13,uVar28,iVar4);" (call_expression "FUN_00131030(pbVar13,uVar28,iVar4)" identifier (argument_list "(pbVar13,uVar28,iVar4)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }" else (compound_statement "{\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }" { (expression_statement "uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);" (assignment_expression "uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0)" identifier = (call_expression "FUN_00134ea0(iVar4,0,0,DAT_001e3ca0)" identifier (argument_list "(iVar4,0,0,DAT_001e3ca0)" ( identifier , number_literal , number_literal , identifier )))) ;) (expression_statement "FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);" (call_expression "FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5)" identifier (argument_list "(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5)" ( identifier , (binary_expression "(long)pbVar13 - (DAT_001e4648 + 0x80)" (cast_expression "(long)pbVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) ))) , identifier , identifier , number_literal , identifier ))) ;) }))) (expression_statement "uVar11 = DAT_001e3bc0;" (assignment_expression "uVar11 = DAT_001e3bc0" identifier = identifier) ;) (if_statement "if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }" if (parenthesized_expression "(*(char *)(DAT_001e3c60 + 3) != '\x02')" ( (binary_expression "*(char *)(DAT_001e3c60 + 3) != '\x02'" (pointer_expression "*(char *)(DAT_001e3c60 + 3)" * (cast_expression "(char *)(DAT_001e3c60 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_001e3c60 + 3)" ( (binary_expression "DAT_001e3c60 + 3" identifier + number_literal) )))) != (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }" { (expression_statement "uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);" (assignment_expression "uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5)" identifier = (call_expression "dcgettext(0,"can\'t handle non absolute segment in `%s\'",5)" identifier (argument_list "(0,"can\'t handle non absolute segment in `%s\'",5)" ( number_literal , (string_literal ""can\'t handle non absolute segment in `%s\'"" " string_content escape_sequence string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_0011da70(uVar12,uVar11);" (call_expression "FUN_0011da70(uVar12,uVar11)" identifier (argument_list "(uVar12,uVar11)" ( identifier , identifier ))) ;) })) (expression_statement "uVar11 = DAT_001e3c60[2];" (assignment_expression "uVar11 = DAT_001e3c60[2]" identifier = (subscript_expression "DAT_001e3c60[2]" identifier [ number_literal ])) ;) (expression_statement "uVar12 = 2;" (assignment_expression "uVar12 = 2" identifier = number_literal) ;) (expression_statement "pbVar13 = pbVar13 + iVar4;" (assignment_expression "pbVar13 = pbVar13 + iVar4" identifier = (binary_expression "pbVar13 + iVar4" identifier + identifier)) ;) (labeled_statement "LAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);" statement_identifier : (expression_statement "FUN_00131030(pbVar13,uVar11,uVar12);" (call_expression "FUN_00131030(pbVar13,uVar11,uVar12)" identifier (argument_list "(pbVar13,uVar11,uVar12)" ( identifier , identifier , identifier ))) ;)) (return_statement "return;" return ;) })) (if_statement "if ((DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae)) {\n    if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }\n  }\n  else {\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }" if (parenthesized_expression "((DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae))" ( (binary_expression "(DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae)" (parenthesized_expression "(DAT_001e3adc == 0)" ( (binary_expression "DAT_001e3adc == 0" identifier == number_literal) )) || (parenthesized_expression "(DAT_001e3bcc != 0xfae)" ( (binary_expression "DAT_001e3bcc != 0xfae" identifier != number_literal) ))) )) (compound_statement "{\n    if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }\n  }" { (if_statement "if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }" if (parenthesized_expression "(DAT_001e3ae0 != 0)" ( (binary_expression "DAT_001e3ae0 != 0" identifier != number_literal) )) (compound_statement "{\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }" { (if_statement "if (DAT_001e3bcc == 0xf0) {\n        return;\n      }" if (parenthesized_expression "(DAT_001e3bcc == 0xf0)" ( (binary_expression "DAT_001e3bcc == 0xf0" identifier == number_literal) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) })) (labeled_statement "LAB_00137bee:\n      DAT_001e3ce9 = 0;" statement_identifier : (expression_statement "DAT_001e3ce9 = 0;" (assignment_expression "DAT_001e3ce9 = 0" identifier = number_literal) ;)) })) }) (else_clause "else {\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }" else (compound_statement "{\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }" { (if_statement "if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }" if (parenthesized_expression "(((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0))))" ( (binary_expression "((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))" (parenthesized_expression "((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1))" ( (binary_expression "(DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)" (parenthesized_expression "(DAT_001e3c24 == 1)" ( (binary_expression "DAT_001e3c24 == 1" identifier == number_literal) )) && (parenthesized_expression "(DAT_001e3c34 == 1)" ( (binary_expression "DAT_001e3c34 == 1" identifier == number_literal) ))) )) && (parenthesized_expression "(((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))" ( (parenthesized_expression "((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0))" ( (binary_expression "(DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)" (binary_expression "(DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8" (parenthesized_expression "(DAT_001e3c60[2] & 0xffffffffffffffef)" ( (binary_expression "DAT_001e3c60[2] & 0xffffffffffffffef" (subscript_expression "DAT_001e3c60[2]" identifier [ number_literal ]) & number_literal) )) == number_literal) || (parenthesized_expression "(DAT_001e3c60[2] == 0xf0)" ( (binary_expression "DAT_001e3c60[2] == 0xf0" (subscript_expression "DAT_001e3c60[2]" identifier [ number_literal ]) == number_literal) ))) )) ))) )) (compound_statement "{\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }" { (expression_statement "pbVar13 = (byte *)FUN_00116fb0(5);" (assignment_expression "pbVar13 = (byte *)FUN_00116fb0(5)" identifier = (cast_expression "(byte *)FUN_00116fb0(5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00116fb0(5)" identifier (argument_list "(5)" ( number_literal ))))) ;) (expression_statement "uVar12 = 5;" (assignment_expression "uVar12 = 5" identifier = number_literal) ;) (expression_statement "uVar11 = 0x240483f0;" (assignment_expression "uVar11 = 0x240483f0" identifier = number_literal) ;) (goto_statement "goto LAB_0013817e;" goto statement_identifier ;) })) (if_statement "if (DAT_001e3ae0 != 0) goto LAB_00137bee;" if (parenthesized_expression "(DAT_001e3ae0 != 0)" ( (binary_expression "DAT_001e3ae0 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00137bee;" goto statement_identifier ;)) }))) (if_statement "if ((_DAT_001e3bec & 0x7000600) != 0) {\n    lVar23 = 0;\n    do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);\n    if (DAT_001e3cfc != 0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    lVar23 = FUN_00116fb0(DAT_001e3d14);\n    if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }\n    goto LAB_00137e10;\n  }" if (parenthesized_expression "((_DAT_001e3bec & 0x7000600) != 0)" ( (binary_expression "(_DAT_001e3bec & 0x7000600) != 0" (parenthesized_expression "(_DAT_001e3bec & 0x7000600)" ( (binary_expression "_DAT_001e3bec & 0x7000600" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n    lVar23 = 0;\n    do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);\n    if (DAT_001e3cfc != 0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    lVar23 = FUN_00116fb0(DAT_001e3d14);\n    if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }\n    goto LAB_00137e10;\n  }" { (expression_statement "lVar23 = 0;" (assignment_expression "lVar23 = 0" identifier = number_literal) ;) (do_statement "do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);" do (compound_statement "{\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    }" { (if_statement "if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }" if (parenthesized_expression "((&DAT_001e3ce4)[lVar23] != '\0')" ( (binary_expression "(&DAT_001e3ce4)[lVar23] != '\0'" (subscript_expression "(&DAT_001e3ce4)[lVar23]" (parenthesized_expression "(&DAT_001e3ce4)" ( (pointer_expression "&DAT_001e3ce4" & identifier) )) [ identifier ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }" { (expression_statement "uVar21 = (uint)lVar23;" (assignment_expression "uVar21 = (uint)lVar23" identifier = (cast_expression "(uint)lVar23" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (uVar21 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }" if (parenthesized_expression "(uVar21 == 0)" ( (binary_expression "uVar21 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }" { (labeled_statement "LAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");" statement_identifier : comment (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1e38,"output_insn")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_insn"" " string_content ") ))) ;)) })) (if_statement "if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;" if (parenthesized_expression "(uVar21 < 3)" ( (binary_expression "uVar21 < 3" identifier < number_literal) )) (compound_statement "{\n          FUN_00117220();\n        }" { (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else if (uVar21 != 6) goto LAB_00137a7e;" else (if_statement "if (uVar21 != 6) goto LAB_00137a7e;" if (parenthesized_expression "(uVar21 != 6)" ( (binary_expression "uVar21 != 6" identifier != number_literal) )) (goto_statement "goto LAB_00137a7e;" goto statement_identifier ;)))) })) (expression_statement "lVar23 = lVar23 + 1;" (assignment_expression "lVar23 = lVar23 + 1" identifier = (binary_expression "lVar23 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(lVar23 != 7)" ( (binary_expression "lVar23 != 7" identifier != number_literal) )) ;) (if_statement "if (DAT_001e3cfc != 0) {\n                    /* WARNING: Subroutine does not return */\n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }" if (parenthesized_expression "(DAT_001e3cfc != 0)" ( (binary_expression "DAT_001e3cfc != 0" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }" { comment (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1e3f,"output_insn")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_insn"" " string_content ") ))) ;) })) (expression_statement "lVar23 = FUN_00116fb0(DAT_001e3d14);" (assignment_expression "lVar23 = FUN_00116fb0(DAT_001e3d14)" identifier = (call_expression "FUN_00116fb0(DAT_001e3d14)" identifier (argument_list "(DAT_001e3d14)" ( identifier )))) ;) (if_statement "if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }" if (parenthesized_expression "(DAT_001e3d14 != 0)" ( (binary_expression "DAT_001e3d14 != 0" identifier != number_literal) )) (compound_statement "{\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }" { (expression_statement "lVar16 = 0;" (assignment_expression "lVar16 = 0" identifier = number_literal) ;) (do_statement "do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);" do (compound_statement "{\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      }" { (expression_statement "*(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];" (assignment_expression "*(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16]" (pointer_expression "*(undefined1 *)(lVar23 + lVar16)" * (cast_expression "(undefined1 *)(lVar23 + lVar16)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar23 + lVar16)" ( (binary_expression "lVar23 + lVar16" identifier + identifier) )))) = (subscript_expression "(&DAT_001e3d10)[lVar16]" (parenthesized_expression "(&DAT_001e3d10)" ( (pointer_expression "&DAT_001e3d10" & identifier) )) [ identifier ])) ;) (expression_statement "lVar16 = lVar16 + 1;" (assignment_expression "lVar16 = lVar16 + 1" identifier = (binary_expression "lVar16 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "((uint)lVar16 < DAT_001e3d14)" ( (binary_expression "(uint)lVar16 < DAT_001e3d14" (cast_expression "(uint)lVar16" ( (type_descriptor "uint" type_identifier) ) identifier) < identifier) )) ;) })) (goto_statement "goto LAB_00137e10;" goto statement_identifier ;) })) (if_statement "if (DAT_001e3bd4 != 1) {\n    if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }\n    if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }\n  }" if (parenthesized_expression "(DAT_001e3bd4 != 1)" ( (binary_expression "DAT_001e3bd4 != 1" identifier != number_literal) )) (compound_statement "{\n    if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }\n    if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }\n  }" { (if_statement "if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }" if (parenthesized_expression "(DAT_001e3bd4 == 0)" ( (binary_expression "DAT_001e3bd4 == 0" identifier == number_literal) )) (compound_statement "{\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }" { (expression_statement "uVar11 = dcgettext(0,"pseudo prefix without instruction",5);" (assignment_expression "uVar11 = dcgettext(0,"pseudo prefix without instruction",5)" identifier = (call_expression "dcgettext(0,"pseudo prefix without instruction",5)" identifier (argument_list "(0,"pseudo prefix without instruction",5)" ( number_literal , (string_literal ""pseudo prefix without instruction"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);" (call_expression "FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11)" identifier (argument_list "(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11)" ( (pointer_expression "*(undefined8 *)(lVar1 + 0x40)" * (cast_expression "(undefined8 *)(lVar1 + 0x40)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar1 + 0x40)" ( (binary_expression "lVar1 + 0x40" identifier + number_literal) )))) , (pointer_expression "*(undefined4 *)(lVar1 + 0x48)" * (cast_expression "(undefined4 *)(lVar1 + 0x48)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar1 + 0x48)" ( (binary_expression "lVar1 + 0x48" identifier + number_literal) )))) , identifier ))) ;) (return_statement "return;" return ;) })) (if_statement "if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }" if (parenthesized_expression "(DAT_001e3bd4 == 2)" ( (binary_expression "DAT_001e3bd4 == 2" identifier == number_literal) )) (compound_statement "{\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }" { (if_statement "if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }" if (parenthesized_expression "((DAT_001e3bcc & 0xff0000) != 0)" ( (binary_expression "(DAT_001e3bcc & 0xff0000) != 0" (parenthesized_expression "(DAT_001e3bcc & 0xff0000)" ( (binary_expression "DAT_001e3bcc & 0xff0000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }" { (expression_statement "uVar21 = DAT_001e3bcc >> 0x10 & 0xff;" (assignment_expression "uVar21 = DAT_001e3bcc >> 0x10 & 0xff" identifier = (binary_expression "DAT_001e3bcc >> 0x10 & 0xff" (binary_expression "DAT_001e3bcc >> 0x10" identifier >> number_literal) & number_literal)) ;) (if_statement "if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;" if (parenthesized_expression "((DAT_001e3bda & 0x10) != 0)" ( (binary_expression "(DAT_001e3bda & 0x10) != 0" (parenthesized_expression "(DAT_001e3bda & 0x10)" ( (binary_expression "DAT_001e3bda & 0x10" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00137dbf;" goto statement_identifier ;)) (labeled_statement "LAB_00137dd0:\n        FUN_00131f90();" statement_identifier : (expression_statement "FUN_00131f90();" (call_expression "FUN_00131f90()" identifier (argument_list "()" ( ))) ;)) })) }) (else_clause "else {\n      if (DAT_001e3bd4 != 3) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }" else (compound_statement "{\n      if (DAT_001e3bd4 != 3) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }" { (if_statement "if (DAT_001e3bd4 != 3) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }" if (parenthesized_expression "(DAT_001e3bd4 != 3)" ( (binary_expression "DAT_001e3bd4 != 3" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }" { comment (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1e15,"output_insn")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_insn"" " string_content ") ))) ;) })) (if_statement "if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }" if (parenthesized_expression "((DAT_001e3bcc & 0xff000000) != 0)" ( (binary_expression "(DAT_001e3bcc & 0xff000000) != 0" (parenthesized_expression "(DAT_001e3bcc & 0xff000000)" ( (binary_expression "DAT_001e3bcc & 0xff000000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }" { (expression_statement "uVar21 = DAT_001e3bcc >> 0x18;" (assignment_expression "uVar21 = DAT_001e3bcc >> 0x18" identifier = (binary_expression "DAT_001e3bcc >> 0x18" identifier >> number_literal)) ;) (labeled_statement "LAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;" statement_identifier : (if_statement "if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;" if (parenthesized_expression "((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd))" ( (binary_expression "(uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)" (parenthesized_expression "(uVar21 != 0xf3)" ( (binary_expression "uVar21 != 0xf3" identifier != number_literal) )) || (parenthesized_expression "(DAT_001e3ce8 != -0xd)" ( (binary_expression "DAT_001e3ce8 != -0xd" identifier != number_literal) ))) )) (goto_statement "goto LAB_00137dd0;" goto statement_identifier ;))) })) }))) })) (if_statement "if ((((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0)) {\n    FUN_00131f90(0x40);\n  }" if (parenthesized_expression "((((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0))" ( (binary_expression "(((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0)" (parenthesized_expression "(((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b))" ( (binary_expression "((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)" (parenthesized_expression "((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2))" ( (binary_expression "(DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)" (parenthesized_expression "(DAT_001e3b04 == 2)" ( (binary_expression "DAT_001e3b04 == 2" identifier == number_literal) )) && (parenthesized_expression "(DAT_001e3c24 == 2)" ( (binary_expression "DAT_001e3c24 == 2" identifier == number_literal) ))) )) && (parenthesized_expression "(DAT_001e3c9c == 0x18b)" ( (binary_expression "DAT_001e3c9c == 0x18b" identifier == number_literal) ))) )) && (parenthesized_expression "(DAT_001e3cea == 0)" ( (binary_expression "DAT_001e3cea == 0" identifier == number_literal) ))) )) (compound_statement "{\n    FUN_00131f90(0x40);\n  }" { (expression_statement "FUN_00131f90(0x40);" (call_expression "FUN_00131f90(0x40)" identifier (argument_list "(0x40)" ( number_literal ))) ;) })) (expression_statement "pcVar24 = &DAT_001e3ce4;" (assignment_expression "pcVar24 = &DAT_001e3ce4" identifier = (pointer_expression "&DAT_001e3ce4" & identifier)) ;) (do_statement "do {\n    while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }\n    FUN_00117220();\n    pcVar24 = pcVar24 + 1;\n  } while (pcVar24 != &DAT_001e3ceb);" do (compound_statement "{\n    while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }\n    FUN_00117220();\n    pcVar24 = pcVar24 + 1;\n  }" { (while_statement "while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }" while (parenthesized_expression "(*pcVar24 == '\0')" ( (binary_expression "*pcVar24 == '\0'" (pointer_expression "*pcVar24" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }" { (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" identifier = (binary_expression "pcVar24 + 1" identifier + number_literal)) ;) (if_statement "if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;" if (parenthesized_expression "(pcVar24 == &DAT_001e3ceb)" ( (binary_expression "pcVar24 == &DAT_001e3ceb" identifier == (pointer_expression "&DAT_001e3ceb" & identifier)) )) (goto_statement "goto LAB_00137e10;" goto statement_identifier ;)) })) (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" identifier (argument_list "()" ( ))) ;) (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" identifier = (binary_expression "pcVar24 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(pcVar24 != &DAT_001e3ceb)" ( (binary_expression "pcVar24 != &DAT_001e3ceb" identifier != (pointer_expression "&DAT_001e3ceb" & identifier)) )) ;) (labeled_statement "LAB_00137e10:\n  if (DAT_001e3bd4 == 1) {\n    FUN_00117220(DAT_001e3bcc);\n  }\n  else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }" statement_identifier : (if_statement "if (DAT_001e3bd4 == 1) {\n    FUN_00117220(DAT_001e3bcc);\n  }\n  else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }" if (parenthesized_expression "(DAT_001e3bd4 == 1)" ( (binary_expression "DAT_001e3bd4 == 1" identifier == number_literal) )) (compound_statement "{\n    FUN_00117220(DAT_001e3bcc);\n  }" { (expression_statement "FUN_00117220(DAT_001e3bcc);" (call_expression "FUN_00117220(DAT_001e3bcc)" identifier (argument_list "(DAT_001e3bcc)" ( identifier ))) ;) }) (else_clause "else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }" else (compound_statement "{\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }" { (if_statement "if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }" if (parenthesized_expression "(DAT_001e3bd4 == 3)" ( (binary_expression "DAT_001e3bd4 == 3" identifier == number_literal) )) (compound_statement "{\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }" { (expression_statement "puVar7 = (undefined1 *)FUN_00116fb0(3);" (assignment_expression "puVar7 = (undefined1 *)FUN_00116fb0(3)" identifier = (cast_expression "(undefined1 *)FUN_00116fb0(3)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00116fb0(3)" identifier (argument_list "(3)" ( number_literal ))))) ;) (expression_statement "puVar10 = puVar7 + 1;" (assignment_expression "puVar10 = puVar7 + 1" identifier = (binary_expression "puVar7 + 1" identifier + number_literal)) ;) (expression_statement "*puVar7 = (char)(DAT_001e3bcc >> 0x10);" (assignment_expression "*puVar7 = (char)(DAT_001e3bcc >> 0x10)" (pointer_expression "*puVar7" * identifier) = (cast_expression "(char)(DAT_001e3bcc >> 0x10)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(DAT_001e3bcc >> 0x10)" ( (binary_expression "DAT_001e3bcc >> 0x10" identifier >> number_literal) )))) ;) }) (else_clause "else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }" else (if_statement "if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }" if (parenthesized_expression "(DAT_001e3bd4 == 4)" ( (binary_expression "DAT_001e3bd4 == 4" identifier == number_literal) )) (compound_statement "{\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }" { (expression_statement "puVar7 = (undefined1 *)FUN_00116fb0(4);" (assignment_expression "puVar7 = (undefined1 *)FUN_00116fb0(4)" identifier = (cast_expression "(undefined1 *)FUN_00116fb0(4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00116fb0(4)" identifier (argument_list "(4)" ( number_literal ))))) ;) (expression_statement "*puVar7 = (char)(DAT_001e3bcc >> 0x18);" (assignment_expression "*puVar7 = (char)(DAT_001e3bcc >> 0x18)" (pointer_expression "*puVar7" * identifier) = (cast_expression "(char)(DAT_001e3bcc >> 0x18)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(DAT_001e3bcc >> 0x18)" ( (binary_expression "DAT_001e3bcc >> 0x18" identifier >> number_literal) )))) ;) (expression_statement "puVar10 = puVar7 + 2;" (assignment_expression "puVar10 = puVar7 + 2" identifier = (binary_expression "puVar7 + 2" identifier + number_literal)) ;) (expression_statement "puVar7[1] = (char)(DAT_001e3bcc >> 0x10);" (assignment_expression "puVar7[1] = (char)(DAT_001e3bcc >> 0x10)" (subscript_expression "puVar7[1]" identifier [ number_literal ]) = (cast_expression "(char)(DAT_001e3bcc >> 0x10)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(DAT_001e3bcc >> 0x10)" ( (binary_expression "DAT_001e3bcc >> 0x10" identifier >> number_literal) )))) ;) }) (else_clause "else {\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }" else (compound_statement "{\n      if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }" { (if_statement "if (DAT_001e3bd4 != 2) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }" if (parenthesized_expression "(DAT_001e3bd4 != 2)" ( (binary_expression "DAT_001e3bd4 != 2" identifier != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }" { comment (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1e5c,"output_insn")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_insn"" " string_content ") ))) ;) })) (expression_statement "puVar10 = (undefined1 *)FUN_00116fb0(2);" (assignment_expression "puVar10 = (undefined1 *)FUN_00116fb0(2)" identifier = (cast_expression "(undefined1 *)FUN_00116fb0(2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00116fb0(2)" identifier (argument_list "(2)" ( number_literal ))))) ;) }))))) (expression_statement "*puVar10 = (char)(DAT_001e3bcc >> 8);" (assignment_expression "*puVar10 = (char)(DAT_001e3bcc >> 8)" (pointer_expression "*puVar10" * identifier) = (cast_expression "(char)(DAT_001e3bcc >> 8)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(DAT_001e3bcc >> 8)" ( (binary_expression "DAT_001e3bcc >> 8" identifier >> number_literal) )))) ;) (expression_statement "puVar10[1] = (char)DAT_001e3bcc;" (assignment_expression "puVar10[1] = (char)DAT_001e3bcc" (subscript_expression "puVar10[1]" identifier [ number_literal ]) = (cast_expression "(char)DAT_001e3bcc" ( (type_descriptor "char" primitive_type) ) identifier)) ;) })))) (if_statement "if ((((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))\n     ) {\n    FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);\n  }" if (parenthesized_expression "((((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))\n     )" ( (binary_expression "(((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))" (parenthesized_expression "(((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4))" ( (binary_expression "((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)" (parenthesized_expression "((DAT_001e3be8 & 8) != 0)" ( (binary_expression "(DAT_001e3be8 & 8) != 0" (parenthesized_expression "(DAT_001e3be8 & 8)" ( (binary_expression "DAT_001e3be8 & 8" identifier & number_literal) )) != number_literal) )) && (parenthesized_expression "(FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)" ( (comma_expression "FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4" (call_expression "FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec)" identifier (argument_list "(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec)" ( (binary_expression "DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec" (binary_expression "DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6" (binary_expression "DAT_001e3cf0 * 8" identifier * number_literal) | (binary_expression "DAT_001e3cf4 << 6" identifier << number_literal)) | identifier) ))) , (binary_expression "DAT_001e3cec == 4" identifier == number_literal)) ))) )) && (parenthesized_expression "((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))" ( (parenthesized_expression "(DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0))))" ( (binary_expression "DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))" (binary_expression "DAT_001e3cf4 != 3" identifier != number_literal) && (parenthesized_expression "((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))" ( (parenthesized_expression "(DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0))" ( (binary_expression "DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)" (binary_expression "DAT_001e3cb0 == 0" identifier == number_literal) || (parenthesized_expression "((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)" ( (binary_expression "(*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0" (parenthesized_expression "(*(byte *)(DAT_001e3cb0 + 0xb) & 0x40)" ( (binary_expression "*(byte *)(DAT_001e3cb0 + 0xb) & 0x40" (pointer_expression "*(byte *)(DAT_001e3cb0 + 0xb)" * (cast_expression "(byte *)(DAT_001e3cb0 + 0xb)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_001e3cb0 + 0xb)" ( (binary_expression "DAT_001e3cb0 + 0xb" identifier + number_literal) )))) & number_literal) )) == number_literal) ))) )) ))) )) ))) )) (compound_statement "{\n    FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);\n  }" { (expression_statement "FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);" (call_expression "FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00)" identifier (argument_list "(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00)" ( (binary_expression "DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00" (binary_expression "DAT_001e3d04 * 8 | DAT_001e3d08 << 6" (binary_expression "DAT_001e3d04 * 8" identifier * number_literal) | (binary_expression "DAT_001e3d08 << 6" identifier << number_literal)) | identifier) ))) ;) })) (if_statement "if (DAT_001e3c2c != 0) {\n    if (DAT_001e3c24 == 0) {\n      return;\n    }\n    uVar28 = 0;\n    uVar21 = DAT_001e3c24;\n    do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);\n  }" if (parenthesized_expression "(DAT_001e3c2c != 0)" ( (binary_expression "DAT_001e3c2c != 0" identifier != number_literal) )) (compound_statement "{\n    if (DAT_001e3c24 == 0) {\n      return;\n    }\n    uVar28 = 0;\n    uVar21 = DAT_001e3c24;\n    do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);\n  }" { (if_statement "if (DAT_001e3c24 == 0) {\n      return;\n    }" if (parenthesized_expression "(DAT_001e3c24 == 0)" ( (binary_expression "DAT_001e3c24 == 0" identifier == number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "uVar28 = 0;" (assignment_expression "uVar28 = 0" identifier = number_literal) ;) (expression_statement "uVar21 = DAT_001e3c24;" (assignment_expression "uVar21 = DAT_001e3c24" identifier = identifier) ;) (do_statement "do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);" do (compound_statement "{\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    }" { (expression_statement "uVar22 = DAT_001e3c24;" (assignment_expression "uVar22 = DAT_001e3c24" identifier = identifier) ;) (if_statement "if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }" if (parenthesized_expression "((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0)" ( (binary_expression "(*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0" (parenthesized_expression "(*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f)" ( (binary_expression "*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f" (pointer_expression "*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2)" * (cast_expression "(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&DAT_001e3c38 + uVar28 * 8 + 2)" ( (binary_expression "(long)&DAT_001e3c38 + uVar28 * 8 + 2" (binary_expression "(long)&DAT_001e3c38 + uVar28 * 8" (cast_expression "(long)&DAT_001e3c38" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&DAT_001e3c38" & identifier)) + (binary_expression "uVar28 * 8" identifier * number_literal)) + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }" { (expression_statement "lVar23 = (long)(&DAT_001e3c60)[uVar28];" (assignment_expression "lVar23 = (long)(&DAT_001e3c60)[uVar28]" identifier = (cast_expression "(long)(&DAT_001e3c60)[uVar28]" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" ( (pointer_expression "&DAT_001e3c60" & identifier) )) [ identifier ]))) ;) (expression_statement "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);" (assignment_expression "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" identifier = (pointer_expression "*(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" * (cast_expression "(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" ( (binary_expression "(long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2" (binary_expression "(long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8" (cast_expression "(long)&DAT_001e3c38" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&DAT_001e3c38" & identifier)) + (binary_expression "(uVar28 & 0xffffffff) * 8" (parenthesized_expression "(uVar28 & 0xffffffff)" ( (binary_expression "uVar28 & 0xffffffff" identifier & number_literal) )) * number_literal)) + number_literal) ))))) ;) (expression_statement "bVar3 = bVar15 >> 4 & 1;" (assignment_expression "bVar3 = bVar15 >> 4 & 1" identifier = (binary_expression "bVar15 >> 4 & 1" (binary_expression "bVar15 >> 4" identifier >> number_literal) & number_literal)) ;) (if_statement "if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }" if (parenthesized_expression "(*(char *)(lVar23 + 0x18) == '\x02')" ( (binary_expression "*(char *)(lVar23 + 0x18) == '\x02'" (pointer_expression "*(char *)(lVar23 + 0x18)" * (cast_expression "(char *)(lVar23 + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar23 + 0x18)" ( (binary_expression "lVar23 + 0x18" identifier + number_literal) )))) == (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }" { (expression_statement "lVar23 = *(long *)(lVar23 + 0x10);" (assignment_expression "lVar23 = *(long *)(lVar23 + 0x10)" identifier = (pointer_expression "*(long *)(lVar23 + 0x10)" * (cast_expression "(long *)(lVar23 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar23 + 0x10)" ( (binary_expression "lVar23 + 0x10" identifier + number_literal) ))))) ;) (if_statement "if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }" if (parenthesized_expression "(bVar3 == 0)" ( (binary_expression "bVar3 == 0" identifier == number_literal) )) (compound_statement "{\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }" { (if_statement "if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }" if (parenthesized_expression "((bVar15 & 1) == 0)" ( (binary_expression "(bVar15 & 1) == 0" (parenthesized_expression "(bVar15 & 1)" ( (binary_expression "bVar15 & 1" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }" { (expression_statement "bVar15 = bVar15 >> 1 & 1;" (assignment_expression "bVar15 = bVar15 >> 1 & 1" identifier = (binary_expression "bVar15 >> 1 & 1" (binary_expression "bVar15 >> 1" identifier >> number_literal) & number_literal)) ;) (expression_statement "cVar25 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar25 = (-(bVar15 == 0) & 2U) + 2" identifier = (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" ( (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" - (parenthesized_expression "(bVar15 == 0)" ( (binary_expression "bVar15 == 0" identifier == number_literal) ))) & number_literal) )) + number_literal)) ;) (expression_statement "cVar19 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar19 = (-(bVar15 == 0) & 2U) + 2" identifier = (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" ( (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" - (parenthesized_expression "(bVar15 == 0)" ( (binary_expression "bVar15 == 0" identifier == number_literal) ))) & number_literal) )) + number_literal)) ;) }) (else_clause "else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }" else (compound_statement "{\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }" { (expression_statement "cVar25 = '\x01';" (assignment_expression "cVar25 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "cVar19 = '\x01';" (assignment_expression "cVar19 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);" (assignment_expression "lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f)" identifier = (binary_expression "lVar23 >> ((byte)DAT_001e3d38 & 0x3f)" identifier >> (parenthesized_expression "((byte)DAT_001e3d38 & 0x3f)" ( (binary_expression "(byte)DAT_001e3d38 & 0x3f" (cast_expression "(byte)DAT_001e3d38" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) ;) }))) }) (else_clause "else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }" else (compound_statement "{\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }" { (expression_statement "cVar25 = '\b';" (assignment_expression "cVar25 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) (expression_statement "cVar19 = '\b';" (assignment_expression "cVar19 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) }))) (expression_statement "uVar11 = FUN_00135250(lVar23,cVar19);" (assignment_expression "uVar11 = FUN_00135250(lVar23,cVar19)" identifier = (call_expression "FUN_00135250(lVar23,cVar19)" identifier (argument_list "(lVar23,cVar19)" ( identifier , identifier )))) ;) (expression_statement "uVar12 = FUN_00116fb0(cVar25);" (assignment_expression "uVar12 = FUN_00116fb0(cVar25)" identifier = (call_expression "FUN_00116fb0(cVar25)" identifier (argument_list "(cVar25)" ( identifier )))) ;) (expression_statement "FUN_00131030(uVar12,uVar11,cVar19);" (call_expression "FUN_00131030(uVar12,uVar11,cVar19)" identifier (argument_list "(uVar12,uVar11,cVar19)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar22 = DAT_001e3c24;" (assignment_expression "uVar22 = DAT_001e3c24" identifier = identifier) ;) }) (else_clause "else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }" else (compound_statement "{\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }" { (if_statement "if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }" if (parenthesized_expression "(bVar3 == 0)" ( (binary_expression "bVar3 == 0" identifier == number_literal) )) (compound_statement "{\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }" { (if_statement "if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }" if (parenthesized_expression "((bVar15 & 1) != 0)" ( (binary_expression "(bVar15 & 1) != 0" (parenthesized_expression "(bVar15 & 1)" ( (binary_expression "bVar15 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }" { (labeled_statement "LAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");" statement_identifier : comment (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1ec2,"output_disp")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_disp"" " string_content ") ))) ;)) })) (expression_statement "bVar3 = bVar15 >> 1;" (assignment_expression "bVar3 = bVar15 >> 1" identifier = (binary_expression "bVar15 >> 1" identifier >> number_literal)) ;) (expression_statement "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);" (assignment_expression "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" identifier = (pointer_expression "*(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" * (cast_expression "(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" ( (binary_expression "(long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2" (binary_expression "(long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8" (cast_expression "(long)&DAT_001e3c38" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&DAT_001e3c38" & identifier)) + (binary_expression "(uVar28 & 0xffffffff) * 8" (parenthesized_expression "(uVar28 & 0xffffffff)" ( (binary_expression "uVar28 & 0xffffffff" identifier & number_literal) )) * number_literal)) + number_literal) ))))) ;) (expression_statement "cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;" (assignment_expression "cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2" identifier = (binary_expression "(-((bVar3 & 1) == 0) & 2U) + 2" (parenthesized_expression "(-((bVar3 & 1) == 0) & 2U)" ( (binary_expression "-((bVar3 & 1) == 0) & 2U" (unary_expression "-((bVar3 & 1) == 0)" - (parenthesized_expression "((bVar3 & 1) == 0)" ( (binary_expression "(bVar3 & 1) == 0" (parenthesized_expression "(bVar3 & 1)" ( (binary_expression "bVar3 & 1" identifier & number_literal) )) == number_literal) ))) & number_literal) )) + number_literal)) ;) (expression_statement "uVar22 = (&DAT_001e3c88)[uVar28];" (assignment_expression "uVar22 = (&DAT_001e3c88)[uVar28]" identifier = (subscript_expression "(&DAT_001e3c88)[uVar28]" (parenthesized_expression "(&DAT_001e3c88)" ( (pointer_expression "&DAT_001e3c88" & identifier) )) [ identifier ])) ;) }) (else_clause "else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }" else (compound_statement "{\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }" { (expression_statement "uVar22 = (&DAT_001e3c88)[uVar28];" (assignment_expression "uVar22 = (&DAT_001e3c88)[uVar28]" identifier = (subscript_expression "(&DAT_001e3c88)[uVar28]" (parenthesized_expression "(&DAT_001e3c88)" ( (pointer_expression "&DAT_001e3c88" & identifier) )) [ identifier ])) ;) (if_statement "if ((bVar15 & 1) != 0) goto LAB_00138302;" if (parenthesized_expression "((bVar15 & 1) != 0)" ( (binary_expression "(bVar15 & 1) != 0" (parenthesized_expression "(bVar15 & 1)" ( (binary_expression "bVar15 & 1" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00138302;" goto statement_identifier ;)) (expression_statement "cVar19 = '\b';" (assignment_expression "cVar19 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) }))) (expression_statement "uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;" (assignment_expression "uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001" identifier = (binary_expression "(ulong)(bVar15 >> 3) & 0xffffffff00000001" (call_expression "(ulong)(bVar15 >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(bVar15 >> 3)" ( (binary_expression "bVar15 >> 3" identifier >> number_literal) ))) & number_literal)) ;) (expression_statement "uVar22 = uVar22 & 1;" (assignment_expression "uVar22 = uVar22 & 1" identifier = (binary_expression "uVar22 & 1" identifier & number_literal)) ;) (if_statement "if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }" if (parenthesized_expression "((uVar22 != 0) && (DAT_001e3c34 != 0))" ( (binary_expression "(uVar22 != 0) && (DAT_001e3c34 != 0)" (parenthesized_expression "(uVar22 != 0)" ( (binary_expression "uVar22 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_001e3c34 != 0)" ( (binary_expression "DAT_001e3c34 != 0" identifier != number_literal) ))) )) (compound_statement "{\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }" { (expression_statement "uVar9 = 0;" (assignment_expression "uVar9 = 0" identifier = number_literal) ;) (expression_statement "cVar25 = '\0';" (assignment_expression "cVar25 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (do_statement "do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);" do (compound_statement "{\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            }" { (if_statement "if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }" if (parenthesized_expression "((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0)" ( (binary_expression "(*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0" (parenthesized_expression "(*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc)" ( (binary_expression "*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc" (pointer_expression "*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1)" * (cast_expression "(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&DAT_001e3c38 + uVar9 * 8 + 1)" ( (binary_expression "(long)&DAT_001e3c38 + uVar9 * 8 + 1" (binary_expression "(long)&DAT_001e3c38 + uVar9 * 8" (cast_expression "(long)&DAT_001e3c38" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&DAT_001e3c38" & identifier)) + (binary_expression "uVar9 * 8" identifier * number_literal)) + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n                if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }" { (if_statement "if (cVar25 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }" if (parenthesized_expression "(cVar25 != '\0')" ( (binary_expression "cVar25 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }" { comment (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1ed1,"output_disp")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_disp"" " string_content ") ))) ;) })) (expression_statement "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);" (assignment_expression "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1)" identifier = (pointer_expression "*(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1)" * (cast_expression "(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1)" ( (binary_expression "(long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1" (binary_expression "(long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8" (cast_expression "(long)&DAT_001e3c38" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&DAT_001e3c38" & identifier)) + (binary_expression "(uVar9 & 0xffffffff) * 8" (parenthesized_expression "(uVar9 & 0xffffffff)" ( (binary_expression "uVar9 & 0xffffffff" identifier & number_literal) )) * number_literal)) + number_literal) ))))) ;) (if_statement "if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }" if (parenthesized_expression "((char)bVar15 < '\0')" ( (binary_expression "(char)bVar15 < '\0'" (cast_expression "(char)bVar15" ( (type_descriptor "char" primitive_type) ) identifier) < (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }" { (expression_statement "lVar16 = 8;" (assignment_expression "lVar16 = 8" identifier = number_literal) ;) (expression_statement "cVar25 = '\b';" (assignment_expression "cVar25 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) }) (else_clause "else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }" else (if_statement "if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }" if (parenthesized_expression "(((bVar15 & 4) == 0) && ((bVar15 & 8) == 0))" ( (binary_expression "((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)" (parenthesized_expression "((bVar15 & 4) == 0)" ( (binary_expression "(bVar15 & 4) == 0" (parenthesized_expression "(bVar15 & 4)" ( (binary_expression "bVar15 & 4" identifier & number_literal) )) == number_literal) )) && (parenthesized_expression "((bVar15 & 8) == 0)" ( (binary_expression "(bVar15 & 8) == 0" (parenthesized_expression "(bVar15 & 8)" ( (binary_expression "bVar15 & 8" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }" { (expression_statement "bVar15 = bVar15 >> 4 & 1;" (assignment_expression "bVar15 = bVar15 >> 4 & 1" identifier = (binary_expression "bVar15 >> 4 & 1" (binary_expression "bVar15 >> 4" identifier >> number_literal) & number_literal)) ;) (expression_statement "lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;" (assignment_expression "lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2" identifier = (binary_expression "(ulong)(-(uint)(bVar15 == 0) & 2) + 2" (call_expression "(ulong)(-(uint)(bVar15 == 0) & 2)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(-(uint)(bVar15 == 0) & 2)" ( (binary_expression "-(uint)(bVar15 == 0) & 2" (unary_expression "-(uint)(bVar15 == 0)" - (call_expression "(uint)(bVar15 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar15 == 0)" ( (binary_expression "bVar15 == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal)) ;) (expression_statement "cVar25 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar25 = (-(bVar15 == 0) & 2U) + 2" identifier = (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" ( (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" - (parenthesized_expression "(bVar15 == 0)" ( (binary_expression "bVar15 == 0" identifier == number_literal) ))) & number_literal) )) + number_literal)) ;) }) (else_clause "else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }" else (compound_statement "{\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }" { (expression_statement "lVar16 = 1;" (assignment_expression "lVar16 = 1" identifier = number_literal) ;) (expression_statement "cVar25 = '\x01';" (assignment_expression "cVar25 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) }))))) (expression_statement "*(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;" (assignment_expression "*(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16" (pointer_expression "*(long *)(lVar23 + 0x10)" * (cast_expression "(long *)(lVar23 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar23 + 0x10)" ( (binary_expression "lVar23 + 0x10" identifier + number_literal) )))) = (binary_expression "*(long *)(lVar23 + 0x10) - lVar16" (pointer_expression "*(long *)(lVar23 + 0x10)" * (cast_expression "(long *)(lVar23 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar23 + 0x10)" ( (binary_expression "lVar23 + 0x10" identifier + number_literal) )))) - identifier)) ;) })) (expression_statement "uVar9 = uVar9 + 1;" (assignment_expression "uVar9 = uVar9 + 1" identifier = (binary_expression "uVar9 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "((uint)uVar9 < uVar21)" ( (binary_expression "(uint)uVar9 < uVar21" (cast_expression "(uint)uVar9" ( (type_descriptor "uint" type_identifier) ) identifier) < identifier) )) ;) (if_statement "if (cVar25 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }" if (parenthesized_expression "(cVar25 == '\0')" ( (binary_expression "cVar25 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }" { comment (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1ed6,"output_disp")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_disp"" " string_content ") ))) ;) })) })) (expression_statement "lVar16 = FUN_00116fb0(cVar19);" (assignment_expression "lVar16 = FUN_00116fb0(cVar19)" identifier = (call_expression "FUN_00116fb0(cVar19)" identifier (argument_list "(cVar19)" ( identifier )))) ;) (expression_statement "uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);" (assignment_expression "uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28])" identifier = (call_expression "FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28])" identifier (argument_list "(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28])" ( identifier , identifier , (binary_expression "uVar30 & 0xffffffff" identifier & number_literal) , (subscript_expression "(&DAT_001e3c9c)[uVar28]" (parenthesized_expression "(&DAT_001e3c9c)" ( (pointer_expression "&DAT_001e3c9c" & identifier) )) [ identifier ]) )))) ;) (expression_statement "lVar23 = DAT_001e4648;" (assignment_expression "lVar23 = DAT_001e4648" identifier = identifier) ;) (if_statement "if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }" if (parenthesized_expression "(DAT_001e3a80 == 0)" ( (binary_expression "DAT_001e3a80 == 0" identifier == number_literal) )) (compound_statement "{\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }" { (expression_statement "plVar14 = (&DAT_001e3c60)[uVar28];" (assignment_expression "plVar14 = (&DAT_001e3c60)[uVar28]" identifier = (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" ( (pointer_expression "&DAT_001e3c60" & identifier) )) [ identifier ])) ;) (expression_statement "lVar16 = lVar16 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar16 = lVar16 - (DAT_001e4648 + 0x80)" identifier = (binary_expression "lVar16 - (DAT_001e4648 + 0x80)" identifier - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) )))) ;) }) (else_clause "else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }" else (compound_statement "{\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }" { (expression_statement "plVar14 = (&DAT_001e3c60)[uVar28];" (assignment_expression "plVar14 = (&DAT_001e3c60)[uVar28]" identifier = (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" ( (pointer_expression "&DAT_001e3c60" & identifier) )) [ identifier ])) ;) (if_statement "if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }" if (parenthesized_expression "(DAT_001e3a80 == *plVar14)" ( (binary_expression "DAT_001e3a80 == *plVar14" identifier == (pointer_expression "*plVar14" * identifier)) )) (compound_statement "{\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }" { (if_statement "if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }" if (parenthesized_expression "((uVar21 == 2) || (uVar21 == 0x184))" ( (binary_expression "(uVar21 == 2) || (uVar21 == 0x184)" (parenthesized_expression "(uVar21 == 2)" ( (binary_expression "uVar21 == 2" identifier == number_literal) )) || (parenthesized_expression "(uVar21 == 0x184)" ( (binary_expression "uVar21 == 0x184" identifier == number_literal) ))) )) (compound_statement "{\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }" { (labeled_statement "LAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }" statement_identifier : (if_statement "if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }" if (parenthesized_expression "((char)plVar14[3] != '\x03')" ( (binary_expression "(char)plVar14[3] != '\x03'" (cast_expression "(char)plVar14[3]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "plVar14[3]" identifier [ number_literal ])) != (char_literal "'\x03'" ' escape_sequence ')) )) (compound_statement "{\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }" { (if_statement "if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }" if (parenthesized_expression "((char)plVar14[3] == '\x13')" ( (binary_expression "(char)plVar14[3] == '\x13'" (cast_expression "(char)plVar14[3]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "plVar14[3]" identifier [ number_literal ])) == (char_literal "'\x13'" ' escape_sequence ')) )) (compound_statement "{\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }" { (expression_statement "uVar30 = (ulong)uVar21;" (assignment_expression "uVar30 = (ulong)uVar21" identifier = (cast_expression "(ulong)uVar21" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "lVar23 = FUN_0012bc00(plVar14[1]);" (assignment_expression "lVar23 = FUN_0012bc00(plVar14[1])" identifier = (call_expression "FUN_0012bc00(plVar14[1])" identifier (argument_list "(plVar14[1])" ( (subscript_expression "plVar14[1]" identifier [ number_literal ]) )))) ;) (expression_statement "uVar21 = (uint)uVar30;" (assignment_expression "uVar21 = (uint)uVar30" identifier = (cast_expression "(uint)uVar30" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "plVar14 = (&DAT_001e3c60)[uVar28];" (assignment_expression "plVar14 = (&DAT_001e3c60)[uVar28]" identifier = (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" ( (pointer_expression "&DAT_001e3c60" & identifier) )) [ identifier ])) ;) (if_statement "if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;" if (parenthesized_expression "(*(char *)(lVar23 + 0x18) == '\x14')" ( (binary_expression "*(char *)(lVar23 + 0x18) == '\x14'" (pointer_expression "*(char *)(lVar23 + 0x18)" * (cast_expression "(char *)(lVar23 + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar23 + 0x18)" ( (binary_expression "lVar23 + 0x18" identifier + number_literal) )))) == (char_literal "'\x14'" ' escape_sequence ')) )) (goto_statement "goto LAB_00138730;" goto statement_identifier ;)) })) (goto_statement "goto LAB_001385b1;" goto statement_identifier ;) }))) (labeled_statement "LAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);" statement_identifier : (expression_statement "lVar16 = lVar16 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar16 = lVar16 - (DAT_001e4648 + 0x80)" identifier = (binary_expression "lVar16 - (DAT_001e4648 + 0x80)" identifier - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) )))) ;)) }) (else_clause "else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }" else (compound_statement "{\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }" { (if_statement "if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }" if (parenthesized_expression "(uVar21 == 1)" ( (binary_expression "uVar21 == 1" identifier == number_literal) )) (compound_statement "{\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }" { (if_statement "if (DAT_001e3b10 == 0) goto LAB_001383be;" if (parenthesized_expression "(DAT_001e3b10 == 0)" ( (binary_expression "DAT_001e3b10 == 0" identifier == number_literal) )) (goto_statement "goto LAB_001383be;" goto statement_identifier ;)) (goto_statement "goto LAB_001386f0;" goto statement_identifier ;) })) (labeled_statement "LAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);" statement_identifier : (expression_statement "lVar16 = lVar16 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar16 = lVar16 - (DAT_001e4648 + 0x80)" identifier = (binary_expression "lVar16 - (DAT_001e4648 + 0x80)" identifier - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) )))) ;)) (expression_statement "lVar23 = DAT_001e4648;" (assignment_expression "lVar23 = DAT_001e4648" identifier = identifier) ;) (if_statement "if (uVar21 != 9) goto LAB_001383d2;" if (parenthesized_expression "(uVar21 != 9)" ( (binary_expression "uVar21 != 9" identifier != number_literal) )) (goto_statement "goto LAB_001383d2;" goto statement_identifier ;)) }))) (expression_statement "lVar23 = DAT_001e4648;" (assignment_expression "lVar23 = DAT_001e4648" identifier = identifier) ;) (if_statement "if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }" if (parenthesized_expression "(lVar1 == DAT_001e4648)" ( (binary_expression "lVar1 == DAT_001e4648" identifier == identifier) )) (compound_statement "{\n                lVar17 = -lVar6;\n              }" { (expression_statement "lVar17 = -lVar6;" (assignment_expression "lVar17 = -lVar6" identifier = (unary_expression "-lVar6" - identifier)) ;) }) (else_clause "else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }" else (compound_statement "{\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }" { (expression_statement "uVar30 = *(ulong *)(lVar1 + 0x10);" (assignment_expression "uVar30 = *(ulong *)(lVar1 + 0x10)" identifier = (pointer_expression "*(ulong *)(lVar1 + 0x10)" * (cast_expression "(ulong *)(lVar1 + 0x10)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar1 + 0x10)" ( (binary_expression "lVar1 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "lVar17 = uVar30 - lVar6;" (assignment_expression "lVar17 = uVar30 - lVar6" identifier = (binary_expression "uVar30 - lVar6" identifier - identifier)) ;) (for_statement "for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }" for ( (assignment_expression "lVar26 = *(long *)(lVar1 + 0x38)" identifier = (pointer_expression "*(long *)(lVar1 + 0x38)" * (cast_expression "(long *)(lVar1 + 0x38)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar1 + 0x38)" ( (binary_expression "lVar1 + 0x38" identifier + number_literal) ))))) ; (parenthesized_expression "(lVar26 != 0 && (lVar26 != DAT_001e4648))" ( (binary_expression "lVar26 != 0 && (lVar26 != DAT_001e4648)" (binary_expression "lVar26 != 0" identifier != number_literal) && (parenthesized_expression "(lVar26 != DAT_001e4648)" ( (binary_expression "lVar26 != DAT_001e4648" identifier != identifier) ))) )) ; (assignment_expression "lVar26 = *(long *)(lVar26 + 0x38)" identifier = (pointer_expression "*(long *)(lVar26 + 0x38)" * (cast_expression "(long *)(lVar26 + 0x38)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar26 + 0x38)" ( (binary_expression "lVar26 + 0x38" identifier + number_literal) ))))) ) (compound_statement "{\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }" { (expression_statement "lVar17 = lVar17 + *(long *)(lVar26 + 0x10);" (assignment_expression "lVar17 = lVar17 + *(long *)(lVar26 + 0x10)" identifier = (binary_expression "lVar17 + *(long *)(lVar26 + 0x10)" identifier + (pointer_expression "*(long *)(lVar26 + 0x10)" * (cast_expression "(long *)(lVar26 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar26 + 0x10)" ( (binary_expression "lVar26 + 0x10" identifier + number_literal) )))))) ;) })) }))) (if_statement "if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }" if (parenthesized_expression "(DAT_001e3b10 == 0)" ( (binary_expression "DAT_001e3b10 == 0" identifier == number_literal) )) (compound_statement "{\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }" { (expression_statement "plVar14[2] = plVar14[2] + lVar16 + lVar17;" (assignment_expression "plVar14[2] = plVar14[2] + lVar16 + lVar17" (subscript_expression "plVar14[2]" identifier [ number_literal ]) = (binary_expression "plVar14[2] + lVar16 + lVar17" (binary_expression "plVar14[2] + lVar16" (subscript_expression "plVar14[2]" identifier [ number_literal ]) + identifier) + identifier)) ;) (expression_statement "uVar21 = 0x16b;" (assignment_expression "uVar21 = 0x16b" identifier = number_literal) ;) }) (else_clause "else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }" else (compound_statement "{\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }" { (expression_statement "uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;" (assignment_expression "uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e" identifier = (binary_expression "(uint)(uVar21 == 1) * 3 + 0x18e" (binary_expression "(uint)(uVar21 == 1) * 3" (call_expression "(uint)(uVar21 == 1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar21 == 1)" ( (binary_expression "uVar21 == 1" identifier == number_literal) ))) * number_literal) + number_literal)) ;) }))) }) (else_clause "else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }" else (compound_statement "{\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }" { (labeled_statement "LAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);" statement_identifier : (expression_statement "lVar16 = lVar16 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar16 = lVar16 - (DAT_001e4648 + 0x80)" identifier = (binary_expression "lVar16 - (DAT_001e4648 + 0x80)" identifier - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) )))) ;)) }))) }))) (labeled_statement "LAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);" statement_identifier : (expression_statement "pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);" (assignment_expression "pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30)" identifier = (cast_expression "(byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30)" identifier (argument_list "(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30)" ( identifier , identifier , identifier , identifier , identifier , identifier , identifier ))))) ;)) (expression_statement "lVar23 = DAT_001e3cb0;" (assignment_expression "lVar23 = DAT_001e3cb0" identifier = identifier) ;) (expression_statement "uVar22 = DAT_001e3c24;" (assignment_expression "uVar22 = DAT_001e3c24" identifier = identifier) ;) (if_statement "if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }" if (parenthesized_expression "(DAT_001e3ce7 == '\0')" ( (binary_expression "DAT_001e3ce7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }" { (if_statement "if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;" if (parenthesized_expression "(DAT_001da788 == 0)" ( (binary_expression "DAT_001da788 == 0" identifier == number_literal) )) (compound_statement "{\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }" { (if_statement "if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }" if (parenthesized_expression "(DAT_001e3cf4 == 0 && DAT_001e3b10 == 0)" ( (binary_expression "DAT_001e3cf4 == 0 && DAT_001e3b10 == 0" (binary_expression "DAT_001e3cf4 == 0" identifier == number_literal) && (binary_expression "DAT_001e3b10 == 0" identifier == number_literal)) )) (compound_statement "{\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }" { (labeled_statement "LAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;" statement_identifier : (if_statement "if (DAT_001e3cec == 5) goto LAB_0013841d;" if (parenthesized_expression "(DAT_001e3cec == 5)" ( (binary_expression "DAT_001e3cec == 5" identifier == number_literal) )) (goto_statement "goto LAB_0013841d;" goto statement_identifier ;))) })) }) (else_clause "else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;" else (if_statement "if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;" if (parenthesized_expression "(DAT_001e3cf4 == 2)" ( (binary_expression "DAT_001e3cf4 == 2" identifier == number_literal) )) (compound_statement "{\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }" { (labeled_statement "LAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;" statement_identifier : (if_statement "if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;" if (parenthesized_expression "(DAT_001e3c24 == 1)" ( (binary_expression "DAT_001e3c24 == 1" identifier == number_literal) )) (compound_statement "{\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }" { (if_statement "if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }" if (parenthesized_expression "((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0))" ( (binary_expression "(DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)" (parenthesized_expression "(DAT_001e3bcc != 0xff)" ( (binary_expression "DAT_001e3bcc != 0xff" identifier != number_literal) )) || (parenthesized_expression "((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)" ( (binary_expression "(DAT_001e3cf0 - 2U & 0xfffffffd) != 0" (parenthesized_expression "(DAT_001e3cf0 - 2U & 0xfffffffd)" ( (binary_expression "DAT_001e3cf0 - 2U & 0xfffffffd" (binary_expression "DAT_001e3cf0 - 2U" identifier - number_literal) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }" { (if_statement "if (DAT_001e3c34 == 0) {\n                    return;\n                  }" if (parenthesized_expression "(DAT_001e3c34 == 0)" ( (binary_expression "DAT_001e3c34 == 0" identifier == number_literal) )) (compound_statement "{\n                    return;\n                  }" { (return_statement "return;" return ;) })) (goto_statement "goto LAB_00137e9a;" goto statement_identifier ;) })) }) (else_clause "else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;" else (if_statement "if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;" if (parenthesized_expression "((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3))))" ( (binary_expression "(DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))" (parenthesized_expression "(DAT_001e3c24 != 2)" ( (binary_expression "DAT_001e3c24 != 2" identifier != number_literal) )) || (parenthesized_expression "(((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))" ( (parenthesized_expression "((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3))" ( (binary_expression "(DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)" (parenthesized_expression "(DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85))" ( (binary_expression "DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)" (binary_expression "DAT_001e3bcc != 0x8b" identifier != number_literal) && (parenthesized_expression "(DAT_001e3bcc != 0x85)" ( (binary_expression "DAT_001e3bcc != 0x85" identifier != number_literal) ))) )) && (parenthesized_expression "((DAT_001e3bcc & 199) != 3)" ( (binary_expression "(DAT_001e3bcc & 199) != 3" (parenthesized_expression "(DAT_001e3bcc & 199)" ( (binary_expression "DAT_001e3bcc & 199" identifier & number_literal) )) != number_literal) ))) )) ))) )) (goto_statement "goto LAB_00138326;" goto statement_identifier ;))))) (if_statement "if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }" if (parenthesized_expression "(DAT_001e3b10 == 0)" ( (binary_expression "DAT_001e3b10 == 0" identifier == number_literal) )) (compound_statement "{\n                *pbVar8 = *pbVar8 | 0x10;\n              }" { (expression_statement "*pbVar8 = *pbVar8 | 0x10;" (assignment_expression "*pbVar8 = *pbVar8 | 0x10" (pointer_expression "*pbVar8" * identifier) = (binary_expression "*pbVar8 | 0x10" (pointer_expression "*pbVar8" * identifier) | number_literal)) ;) }) (else_clause "else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }" else (compound_statement "{\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }" { (expression_statement "bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';" (assignment_expression "bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b'" identifier = (binary_expression "*pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b'" (binary_expression "*pbVar8 & 0xf7" (pointer_expression "*pbVar8" * identifier) & number_literal) | (binary_expression "(DAT_001e3cf8 != 0) * '\b'" (parenthesized_expression "(DAT_001e3cf8 != 0)" ( (binary_expression "DAT_001e3cf8 != 0" identifier != number_literal) )) * (char_literal "'\b'" ' escape_sequence ')))) ;) (expression_statement "*pbVar8 = bVar15;" (assignment_expression "*pbVar8 = bVar15" (pointer_expression "*pbVar8" * identifier) = identifier) ;) (if_statement "if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }" if (parenthesized_expression "((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11)))" ( (binary_expression "(lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))" (parenthesized_expression "(lVar23 != 0)" ( (binary_expression "lVar23 != 0" identifier != number_literal) )) && (parenthesized_expression "(0xfd < *(byte *)(lVar23 + 0x11))" ( (binary_expression "0xfd < *(byte *)(lVar23 + 0x11)" number_literal < (pointer_expression "*(byte *)(lVar23 + 0x11)" * (cast_expression "(byte *)(lVar23 + 0x11)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar23 + 0x11)" ( (binary_expression "lVar23 + 0x11" identifier + number_literal) ))))) ))) )) (compound_statement "{\n                  *pbVar8 = bVar15 | 0x10;\n                }" { (expression_statement "*pbVar8 = bVar15 | 0x10;" (assignment_expression "*pbVar8 = bVar15 | 0x10" (pointer_expression "*pbVar8" * identifier) = (binary_expression "bVar15 | 0x10" identifier | number_literal)) ;) })) }))) }) (else_clause "else if (DAT_001e3cf4 == 0) goto LAB_00138410;" else (if_statement "if (DAT_001e3cf4 == 0) goto LAB_00138410;" if (parenthesized_expression "(DAT_001e3cf4 == 0)" ( (binary_expression "DAT_001e3cf4 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00138410;" goto statement_identifier ;)))))) })) }))) })) (labeled_statement "LAB_00138326:\n      uVar21 = uVar22;" statement_identifier : (expression_statement "uVar21 = uVar22;" (assignment_expression "uVar21 = uVar22" identifier = identifier) ;)) (expression_statement "uVar28 = uVar28 + 1;" (assignment_expression "uVar28 = uVar28 + 1" identifier = (binary_expression "uVar28 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "((uint)uVar28 < uVar21)" ( (binary_expression "(uint)uVar28 < uVar21" (cast_expression "(uint)uVar28" ( (type_descriptor "uint" type_identifier) ) identifier) < identifier) )) ;) })) (if_statement "if ((DAT_001e3c34 != 0) && (DAT_001e3c24 != 0)) {\nLAB_00137e9a:\n    uVar28 = 0;\n    do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);\n  }" if (parenthesized_expression "((DAT_001e3c34 != 0) && (DAT_001e3c24 != 0))" ( (binary_expression "(DAT_001e3c34 != 0) && (DAT_001e3c24 != 0)" (parenthesized_expression "(DAT_001e3c34 != 0)" ( (binary_expression "DAT_001e3c34 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_001e3c24 != 0)" ( (binary_expression "DAT_001e3c24 != 0" identifier != number_literal) ))) )) (compound_statement "{\nLAB_00137e9a:\n    uVar28 = 0;\n    do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);\n  }" { (labeled_statement "LAB_00137e9a:\n    uVar28 = 0;" statement_identifier : (expression_statement "uVar28 = 0;" (assignment_expression "uVar28 = 0" identifier = number_literal) ;)) (do_statement "do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);" do (compound_statement "{\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    }" { (if_statement "if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }" if (parenthesized_expression "(((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0))" ( (binary_expression "((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)" (parenthesized_expression "((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28))" ( (binary_expression "(DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)" (parenthesized_expression "(DAT_001e3d28 == 0)" ( (binary_expression "DAT_001e3d28 == 0" identifier == number_literal) )) || (parenthesized_expression "(*(int *)(DAT_001e3d28 + 4) != (int)uVar28)" ( (binary_expression "*(int *)(DAT_001e3d28 + 4) != (int)uVar28" (pointer_expression "*(int *)(DAT_001e3d28 + 4)" * (cast_expression "(int *)(DAT_001e3d28 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_001e3d28 + 4)" ( (binary_expression "DAT_001e3d28 + 4" identifier + number_literal) )))) != (cast_expression "(int)uVar28" ( (type_descriptor "int" primitive_type) ) identifier)) ))) )) && (parenthesized_expression "((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)" ( (binary_expression "(*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0" (parenthesized_expression "(*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc)" ( (binary_expression "*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc" (pointer_expression "*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" * (cast_expression "(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" ( (binary_expression "(long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1" (binary_expression "(long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8" (cast_expression "(long)&DAT_001e3bc8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&DAT_001e3bc8" & identifier)) + (binary_expression "(uVar28 + 0xe) * 8" (parenthesized_expression "(uVar28 + 0xe)" ( (binary_expression "uVar28 + 0xe" identifier + number_literal) )) * number_literal)) + number_literal) )))) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }" { (expression_statement "bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);" (assignment_expression "bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" identifier = (pointer_expression "*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" * (cast_expression "(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" ( (binary_expression "(long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1" (binary_expression "(long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8" (cast_expression "(long)&DAT_001e3bc8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&DAT_001e3bc8" & identifier)) + (binary_expression "(uVar28 + 0xe) * 8" (parenthesized_expression "(uVar28 + 0xe)" ( (binary_expression "uVar28 + 0xe" identifier + number_literal) )) * number_literal)) + number_literal) ))))) ;) (if_statement "if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }" if (parenthesized_expression "(*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02')" ( (binary_expression "*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02'" (pointer_expression "*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18)" * (cast_expression "(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)(&DAT_001e3c60)[uVar28] + 0x18)" ( (binary_expression "(long)(&DAT_001e3c60)[uVar28] + 0x18" (cast_expression "(long)(&DAT_001e3c60)[uVar28]" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" ( (pointer_expression "&DAT_001e3c60" & identifier) )) [ identifier ])) + number_literal) )))) == (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }" { (if_statement "if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }" if (parenthesized_expression "((char)bVar15 < '\0')" ( (binary_expression "(char)bVar15 < '\0'" (cast_expression "(char)bVar15" ( (type_descriptor "char" primitive_type) ) identifier) < (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }" { (expression_statement "cVar25 = '\b';" (assignment_expression "cVar25 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) (expression_statement "cVar19 = '\b';" (assignment_expression "cVar19 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) }) (else_clause "else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }" else (if_statement "if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }" if (parenthesized_expression "(((bVar15 & 4) == 0) && ((bVar15 & 8) == 0))" ( (binary_expression "((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)" (parenthesized_expression "((bVar15 & 4) == 0)" ( (binary_expression "(bVar15 & 4) == 0" (parenthesized_expression "(bVar15 & 4)" ( (binary_expression "bVar15 & 4" identifier & number_literal) )) == number_literal) )) && (parenthesized_expression "((bVar15 & 8) == 0)" ( (binary_expression "(bVar15 & 8) == 0" (parenthesized_expression "(bVar15 & 8)" ( (binary_expression "bVar15 & 8" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }" { (expression_statement "bVar15 = bVar15 >> 4 & 1;" (assignment_expression "bVar15 = bVar15 >> 4 & 1" identifier = (binary_expression "bVar15 >> 4 & 1" (binary_expression "bVar15 >> 4" identifier >> number_literal) & number_literal)) ;) (expression_statement "cVar25 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar25 = (-(bVar15 == 0) & 2U) + 2" identifier = (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" ( (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" - (parenthesized_expression "(bVar15 == 0)" ( (binary_expression "bVar15 == 0" identifier == number_literal) ))) & number_literal) )) + number_literal)) ;) (expression_statement "cVar19 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar19 = (-(bVar15 == 0) & 2U) + 2" identifier = (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" ( (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" - (parenthesized_expression "(bVar15 == 0)" ( (binary_expression "bVar15 == 0" identifier == number_literal) ))) & number_literal) )) + number_literal)) ;) }) (else_clause "else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }" else (compound_statement "{\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }" { (expression_statement "cVar25 = '\x01';" (assignment_expression "cVar25 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "cVar19 = '\x01';" (assignment_expression "cVar19 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) }))))) (expression_statement "uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);" (assignment_expression "uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19)" identifier = (call_expression "FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19)" identifier (argument_list "(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19)" ( (pointer_expression "*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10)" * (cast_expression "(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)(&DAT_001e3c60)[uVar28] + 0x10)" ( (binary_expression "(long)(&DAT_001e3c60)[uVar28] + 0x10" (cast_expression "(long)(&DAT_001e3c60)[uVar28]" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" ( (pointer_expression "&DAT_001e3c60" & identifier) )) [ identifier ])) + number_literal) )))) , identifier )))) ;) (expression_statement "uVar12 = FUN_00116fb0(cVar25);" (assignment_expression "uVar12 = FUN_00116fb0(cVar25)" identifier = (call_expression "FUN_00116fb0(cVar25)" identifier (argument_list "(cVar25)" ( identifier )))) ;) (expression_statement "FUN_00131030(uVar12,uVar11,cVar19);" (call_expression "FUN_00131030(uVar12,uVar11,cVar19)" identifier (argument_list "(uVar12,uVar11,cVar19)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }" else (compound_statement "{\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }" { (if_statement "if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }" if (parenthesized_expression "((char)bVar15 < '\0')" ( (binary_expression "(char)bVar15 < '\0'" (cast_expression "(char)bVar15" ( (type_descriptor "char" primitive_type) ) identifier) < (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }" { (expression_statement "cVar19 = '\b';" (assignment_expression "cVar19 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) (expression_statement "cVar25 = '\b';" (assignment_expression "cVar25 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) }) (else_clause "else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }" else (if_statement "if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }" if (parenthesized_expression "(((bVar15 & 4) == 0) && ((bVar15 & 8) == 0))" ( (binary_expression "((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)" (parenthesized_expression "((bVar15 & 4) == 0)" ( (binary_expression "(bVar15 & 4) == 0" (parenthesized_expression "(bVar15 & 4)" ( (binary_expression "bVar15 & 4" identifier & number_literal) )) == number_literal) )) && (parenthesized_expression "((bVar15 & 8) == 0)" ( (binary_expression "(bVar15 & 8) == 0" (parenthesized_expression "(bVar15 & 8)" ( (binary_expression "bVar15 & 8" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }" { (expression_statement "bVar15 = bVar15 >> 4 & 1;" (assignment_expression "bVar15 = bVar15 >> 4 & 1" identifier = (binary_expression "bVar15 >> 4 & 1" (binary_expression "bVar15 >> 4" identifier >> number_literal) & number_literal)) ;) (expression_statement "cVar25 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar25 = (-(bVar15 == 0) & 2U) + 2" identifier = (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" ( (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" - (parenthesized_expression "(bVar15 == 0)" ( (binary_expression "bVar15 == 0" identifier == number_literal) ))) & number_literal) )) + number_literal)) ;) (expression_statement "cVar19 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar19 = (-(bVar15 == 0) & 2U) + 2" identifier = (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" ( (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" - (parenthesized_expression "(bVar15 == 0)" ( (binary_expression "bVar15 == 0" identifier == number_literal) ))) & number_literal) )) + number_literal)) ;) }) (else_clause "else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }" else (compound_statement "{\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }" { (expression_statement "cVar19 = '\x01';" (assignment_expression "cVar19 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "cVar25 = '\x01';" (assignment_expression "cVar25 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) }))))) (expression_statement "bVar15 = 0;" (assignment_expression "bVar15 = 0" identifier = number_literal) ;) (if_statement "if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }" if (parenthesized_expression "((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0'))" ( (binary_expression "(((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')" (parenthesized_expression "(((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q'))" ( (binary_expression "((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')" (parenthesized_expression "((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0)" ( (binary_expression "(*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0" (parenthesized_expression "(*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40)" ( (binary_expression "*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40" (pointer_expression "*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1)" * (cast_expression "(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&DAT_001e3c38 + uVar28 * 8 + 1)" ( (binary_expression "(long)&DAT_001e3c38 + uVar28 * 8 + 1" (binary_expression "(long)&DAT_001e3c38 + uVar28 * 8" (cast_expression "(long)&DAT_001e3c38" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&DAT_001e3c38" & identifier)) + (binary_expression "uVar28 * 8" identifier * number_literal)) + number_literal) )))) & number_literal) )) != number_literal) )) && (parenthesized_expression "(bVar15 = 1, DAT_001e3c20 != 'q')" ( (comma_expression "bVar15 = 1, DAT_001e3c20 != 'q'" (assignment_expression "bVar15 = 1" identifier = number_literal) , (binary_expression "DAT_001e3c20 != 'q'" identifier != (char_literal "'q'" ' character '))) ))) )) && (parenthesized_expression "(bVar15 = 0, DAT_001e3c20 == '\0')" ( (comma_expression "bVar15 = 0, DAT_001e3c20 == '\0'" (assignment_expression "bVar15 = 0" identifier = number_literal) , (binary_expression "DAT_001e3c20 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence '))) ))) )) (compound_statement "{\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }" { (expression_statement "bVar15 = DAT_001e3bea >> 3 & 1;" (assignment_expression "bVar15 = DAT_001e3bea >> 3 & 1" identifier = (binary_expression "DAT_001e3bea >> 3 & 1" (binary_expression "DAT_001e3bea >> 3" identifier >> number_literal) & number_literal)) ;) })) (expression_statement "lVar23 = FUN_00116fb0(cVar19);" (assignment_expression "lVar23 = FUN_00116fb0(cVar19)" identifier = (call_expression "FUN_00116fb0(cVar19)" identifier (argument_list "(cVar19)" ( identifier )))) ;) (expression_statement "iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);" (assignment_expression "iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28])" identifier = (call_expression "FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28])" identifier (argument_list "(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28])" ( identifier , number_literal , identifier , (subscript_expression "(&DAT_001e3c9c)[uVar28]" (parenthesized_expression "(&DAT_001e3c9c)" ( (pointer_expression "&DAT_001e3c9c" & identifier) )) [ identifier ]) )))) ;) (if_statement "if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }" if (parenthesized_expression "((iVar4 - 1U < 2) || (iVar4 == 0x184))" ( (binary_expression "(iVar4 - 1U < 2) || (iVar4 == 0x184)" (parenthesized_expression "(iVar4 - 1U < 2)" ( (binary_expression "iVar4 - 1U < 2" (binary_expression "iVar4 - 1U" identifier - number_literal) < number_literal) )) || (parenthesized_expression "(iVar4 == 0x184)" ( (binary_expression "iVar4 == 0x184" identifier == number_literal) ))) )) (compound_statement "{\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }" { (expression_statement "plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];" (assignment_expression "plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14]" identifier = (cast_expression "(long *)(&DAT_001e3bc0)[uVar28 + 0x14]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "(&DAT_001e3bc0)[uVar28 + 0x14]" (parenthesized_expression "(&DAT_001e3bc0)" ( (pointer_expression "&DAT_001e3bc0" & identifier) )) [ (binary_expression "uVar28 + 0x14" identifier + number_literal) ]))) ;) (if_statement "if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }" if (parenthesized_expression "((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14))" ( (binary_expression "(DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)" (parenthesized_expression "(DAT_001e3a80 != 0)" ( (binary_expression "DAT_001e3a80 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_001e3a80 == *plVar14)" ( (binary_expression "DAT_001e3a80 == *plVar14" identifier == (pointer_expression "*plVar14" * identifier)) ))) )) (compound_statement "{\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }" { (if_statement "if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }" if (parenthesized_expression "((char)plVar14[3] == '\x03')" ( (binary_expression "(char)plVar14[3] == '\x03'" (cast_expression "(char)plVar14[3]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "plVar14[3]" identifier [ number_literal ])) == (char_literal "'\x03'" ' escape_sequence ')) )) (compound_statement "{\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }" { (labeled_statement "LAB_00138a92:\n                lVar16 = DAT_001e4648;" statement_identifier : (expression_statement "lVar16 = DAT_001e4648;" (assignment_expression "lVar16 = DAT_001e4648" identifier = identifier) ;)) (expression_statement "lVar26 = lVar23 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar26 = lVar23 - (DAT_001e4648 + 0x80)" identifier = (binary_expression "lVar23 - (DAT_001e4648 + 0x80)" identifier - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) )))) ;) (if_statement "if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }" if (parenthesized_expression "(lVar1 == DAT_001e4648)" ( (binary_expression "lVar1 == DAT_001e4648" identifier == identifier) )) (compound_statement "{\n                  lVar18 = -lVar6;\n                }" { (expression_statement "lVar18 = -lVar6;" (assignment_expression "lVar18 = -lVar6" identifier = (unary_expression "-lVar6" - identifier)) ;) }) (else_clause "else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }" else (compound_statement "{\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }" { (expression_statement "lVar23 = *(long *)(lVar1 + 0x10);" (assignment_expression "lVar23 = *(long *)(lVar1 + 0x10)" identifier = (pointer_expression "*(long *)(lVar1 + 0x10)" * (cast_expression "(long *)(lVar1 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar1 + 0x10)" ( (binary_expression "lVar1 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "lVar18 = lVar23 - lVar6;" (assignment_expression "lVar18 = lVar23 - lVar6" identifier = (binary_expression "lVar23 - lVar6" identifier - identifier)) ;) (for_statement "for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }" for ( (assignment_expression "lVar17 = *(long *)(lVar1 + 0x38)" identifier = (pointer_expression "*(long *)(lVar1 + 0x38)" * (cast_expression "(long *)(lVar1 + 0x38)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar1 + 0x38)" ( (binary_expression "lVar1 + 0x38" identifier + number_literal) ))))) ; (parenthesized_expression "(lVar17 != 0 && (DAT_001e4648 != lVar17))" ( (binary_expression "lVar17 != 0 && (DAT_001e4648 != lVar17)" (binary_expression "lVar17 != 0" identifier != number_literal) && (parenthesized_expression "(DAT_001e4648 != lVar17)" ( (binary_expression "DAT_001e4648 != lVar17" identifier != identifier) ))) )) ; (assignment_expression "lVar17 = *(long *)(lVar17 + 0x38)" identifier = (pointer_expression "*(long *)(lVar17 + 0x38)" * (cast_expression "(long *)(lVar17 + 0x38)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x38)" ( (binary_expression "lVar17 + 0x38" identifier + number_literal) ))))) ) (compound_statement "{\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }" { (expression_statement "lVar18 = lVar18 + *(long *)(lVar17 + 0x10);" (assignment_expression "lVar18 = lVar18 + *(long *)(lVar17 + 0x10)" identifier = (binary_expression "lVar18 + *(long *)(lVar17 + 0x10)" identifier + (pointer_expression "*(long *)(lVar17 + 0x10)" * (cast_expression "(long *)(lVar17 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x10)" ( (binary_expression "lVar17 + 0x10" identifier + number_literal) )))))) ;) })) }))) (if_statement "if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }" if (parenthesized_expression "(DAT_001e3b10 == 0)" ( (binary_expression "DAT_001e3b10 == 0" identifier == number_literal) )) (compound_statement "{\n                  iVar4 = 0x16b;\n                }" { (expression_statement "iVar4 = 0x16b;" (assignment_expression "iVar4 = 0x16b" identifier = number_literal) ;) }) (else_clause "else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }" else (if_statement "if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }" if (parenthesized_expression "(cVar25 == '\x04')" ( (binary_expression "cVar25 == '\x04'" identifier == (char_literal "'\x04'" ' escape_sequence ')) )) (compound_statement "{\n                  iVar4 = 0x18e;\n                }" { (expression_statement "iVar4 = 0x18e;" (assignment_expression "iVar4 = 0x18e" identifier = number_literal) ;) }) (else_clause "else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }" else (if_statement "if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }" if (parenthesized_expression "(cVar25 == '\b')" ( (binary_expression "cVar25 == '\b'" identifier == (char_literal "'\b'" ' escape_sequence ')) )) (compound_statement "{\n                  iVar4 = 0x191;\n                }" { (expression_statement "iVar4 = 0x191;" (assignment_expression "iVar4 = 0x191" identifier = number_literal) ;) })))))) (expression_statement "plVar14[2] = plVar14[2] + lVar26 + lVar18;" (assignment_expression "plVar14[2] = plVar14[2] + lVar26 + lVar18" (subscript_expression "plVar14[2]" identifier [ number_literal ]) = (binary_expression "plVar14[2] + lVar26 + lVar18" (binary_expression "plVar14[2] + lVar26" (subscript_expression "plVar14[2]" identifier [ number_literal ]) + identifier) + identifier)) ;) (goto_statement "goto LAB_00137fa9;" goto statement_identifier ;) })) (if_statement "if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }" if (parenthesized_expression "((char)plVar14[3] == '\x13')" ( (binary_expression "(char)plVar14[3] == '\x13'" (cast_expression "(char)plVar14[3]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "plVar14[3]" identifier [ number_literal ])) == (char_literal "'\x13'" ' escape_sequence ')) )) (compound_statement "{\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }" { (expression_statement "lVar16 = FUN_0012bc00(plVar14[1]);" (assignment_expression "lVar16 = FUN_0012bc00(plVar14[1])" identifier = (call_expression "FUN_0012bc00(plVar14[1])" identifier (argument_list "(plVar14[1])" ( (subscript_expression "plVar14[1]" identifier [ number_literal ]) )))) ;) (expression_statement "plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];" (assignment_expression "plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14]" identifier = (cast_expression "(long *)(&DAT_001e3bc0)[uVar28 + 0x14]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "(&DAT_001e3bc0)[uVar28 + 0x14]" (parenthesized_expression "(&DAT_001e3bc0)" ( (pointer_expression "&DAT_001e3bc0" & identifier) )) [ (binary_expression "uVar28 + 0x14" identifier + number_literal) ]))) ;) (if_statement "if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;" if (parenthesized_expression "(*(char *)(lVar16 + 0x18) == '\x14')" ( (binary_expression "*(char *)(lVar16 + 0x18) == '\x14'" (pointer_expression "*(char *)(lVar16 + 0x18)" * (cast_expression "(char *)(lVar16 + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + 0x18)" ( (binary_expression "lVar16 + 0x18" identifier + number_literal) )))) == (char_literal "'\x14'" ' escape_sequence ')) )) (goto_statement "goto LAB_00138a92;" goto statement_identifier ;)) })) })) (expression_statement "lVar26 = lVar23 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar26 = lVar23 - (DAT_001e4648 + 0x80)" identifier = (binary_expression "lVar23 - (DAT_001e4648 + 0x80)" identifier - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) )))) ;) (expression_statement "lVar16 = DAT_001e4648;" (assignment_expression "lVar16 = DAT_001e4648" identifier = identifier) ;) }) (else_clause "else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }" else (compound_statement "{\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }" { (expression_statement "plVar14 = (&DAT_001e3c60)[uVar28];" (assignment_expression "plVar14 = (&DAT_001e3c60)[uVar28]" identifier = (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" ( (pointer_expression "&DAT_001e3c60" & identifier) )) [ identifier ])) ;) (expression_statement "lVar26 = lVar23 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar26 = lVar23 - (DAT_001e4648 + 0x80)" identifier = (binary_expression "lVar23 - (DAT_001e4648 + 0x80)" identifier - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) )))) ;) (expression_statement "lVar16 = DAT_001e4648;" (assignment_expression "lVar16 = DAT_001e4648" identifier = identifier) ;) }))) (labeled_statement "LAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);" statement_identifier : (expression_statement "FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);" (call_expression "FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23)" identifier (argument_list "(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23)" ( identifier , identifier , identifier , identifier , number_literal , identifier , identifier ))) ;)) }))) })) (expression_statement "uVar21 = (int)uVar28 + 1;" (assignment_expression "uVar21 = (int)uVar28 + 1" identifier = (binary_expression "(int)uVar28 + 1" (cast_expression "(int)uVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "uVar28 = (ulong)uVar21;" (assignment_expression "uVar28 = (ulong)uVar21" identifier = (cast_expression "(ulong)uVar21" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) }) while (parenthesized_expression "(uVar21 < DAT_001e3c24)" ( (binary_expression "uVar21 < DAT_001e3c24" identifier < identifier) )) ;) })) (return_statement "return;" return ;) })))
(translation_unit "/* WARNING: Unknown calling convention -- yet parameter storage is locked */\n/* WARNING: Enum "anon_enum_32": Some values do not have unique names */\n\nvoid output_insn(void)\n\n{\n  frag *pfVar1;\n  bfd_reloc_code_real other;\n  reg_entry *prVar2;\n  fragS *pfVar3;\n  uchar uVar4;\n  bfd_boolean bVar5;\n  bfd_reloc_code_real_type bVar6;\n  addressT aVar7;\n  char *pcVar8;\n  symbolS *symbol;\n  char *pcVar9;\n  fixS *pfVar10;\n  ulong uVar11;\n  valueT vVar12;\n  uchar *puVar13;\n  expressionS *peVar14;\n  expressionS *peVar15;\n  byte bVar16;\n  byte bVar17;\n  long lVar18;\n  uint uVar19;\n  long lVar20;\n  uchar *puVar21;\n  uint uVar22;\n  int iVar23;\n  char cVar24;\n  size_t sVar25;\n  fragS *pfVar26;\n  offsetT offset;\n  uint uVar27;\n  uint uVar28;\n  ulong uVar29;\n  bool bVar30;\n  uint local_58;\n  \n  dwarf2_emit_insn(0);\n  pfVar3 = frag_now;\n  aVar7 = frag_now_fix();\n  other = i.reloc[0];\n  if ((i.tm.opcode_modifier._0_1_ & 0x20) != 0) {\n    uVar19 = (uint)(i.disp_encoding == Cpu386) * 2;\n    if (i.prefix[3] != '\0') {\n      uVar28 = 2;\n      i.prefixes = i.prefixes - 1;\n      bVar30 = flag_code != CODE_16BIT;\n    }\n    else {\n      bVar30 = flag_code == CODE_16BIT;\n      uVar28 = 1;\n    }\n    uVar27 = uVar28;\n    uVar22 = (uint)(i.prefix[3] != '\0');\n    if ((i.prefix[1] & 0xef) == 0x2e) {\n      i.prefixes = i.prefixes - 1;\n      uVar27 = uVar28 + 1;\n      uVar22 = uVar28;\n    }\n    uVar28 = uVar27;\n    if (i.prefix[6] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      uVar28 = uVar27 + 1;\n      uVar22 = uVar27;\n    }\n    if (i.prefix[4] != '\0') {\n      frag_append_1_char((uint)i.prefix[4]);\n      i.prefixes = i.prefixes - 1;\n    }\n    if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }\n    frag_grow((long)(int)(uVar22 + 6));\n    puVar21 = (uchar *)frag_more((long)(int)uVar28);\n    if (i.prefix[3] != '\0') {\n      *puVar21 = 'f';\n      puVar21 = puVar21 + 1;\n    }\n    if ((i.prefix[1] & 0xef) == 0x2e) {\n      *puVar21 = i.prefix[1];\n      puVar21 = puVar21 + 1;\n    }\n    if (i.prefix[6] != '\0') {\n      *puVar21 = i.prefix[6];\n      puVar21 = puVar21 + 1;\n    }\n    uVar4 = (uchar)i.tm.base_opcode;\n    *puVar21 = uVar4;\n    uVar28 = uVar19;\n    if (uVar4 != 0xeb) {\n      uVar28 = uVar19 | 8;\n      if ((cpu_arch_flags.array[0]._0_1_ & 4) != 0) {\n        uVar28 = uVar19 | 4;\n      }\n    }\n    if ((byte)((i.op[0].disps)->field_0x18 - 2) < 2) {\n      symbol = (i.op[0].disps)->X_add_symbol;\n      offset = (i.op[0].disps)->X_add_number;\n    }\n    else {\n      symbol = make_expr_symbol(i.op[0].disps);\n      offset = 0;\n    }\n    frag_var(rs_machine_dependent,5,(ulong)i.reloc[0],uVar28 | bVar30,symbol,offset,(char *)puVar21)\n    ;\n    return;\n  }\n  if ((i.tm.opcode_modifier._0_1_ & 0xc0) != 0) {\n    if ((char)i.tm.opcode_modifier._0_1_ < '\0') {\n      if (i.prefix[2] != '\0') {\n        frag_append_1_char(0x67);\n        i.prefixes = i.prefixes - 1;\n      }\n      uVar19 = 1;\n      if ((i.prefix[1] & 0xef) == 0x2e) {\n        frag_append_1_char((uint)i.prefix[1]);\n        i.prefixes = i.prefixes - 1;\n      }\n    }\n    else {\n      if (flag_code == CODE_16BIT) {\n        if (i.prefix[3] == '\0') {\n          uVar19 = 2;\n          goto LAB_00137acf;\n        }\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n      }\n      else if (i.prefix[3] != '\0') {\n        uVar19 = 2;\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n        goto LAB_00137acf;\n      }\n      uVar19 = 4;\n    }\nLAB_00137acf:\n    if (i.prefix[6] != '\0') {\n      frag_append_1_char((uint)i.prefix[6]);\n      i.prefixes = i.prefixes - 1;\n    }\n    if (i.prefix[4] != '\0') {\n      frag_append_1_char((uint)i.prefix[4]);\n      i.prefixes = i.prefixes - 1;\n    }\n    if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }\n    pcVar8 = frag_more((long)(int)(i.tm.opcode_length + uVar19));\n    pcVar9 = pcVar8;\n    if (i.tm.opcode_length != '\x01') {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      pcVar9 = pcVar8 + 1;\n      *pcVar8 = (char)(i.tm.base_opcode >> 8);\n    }\n    iVar23 = (int)pcVar9 + 1;\n    *pcVar9 = (char)i.tm.base_opcode;\n    if ((uVar19 == 4) && (other == BFD_RELOC_NONE)) {\n      bVar5 = need_plt32_p((i.op[0].disps)->X_add_symbol);\n      bVar6 = reloc(4,1,1,(-(uint)(bVar5 == 0) & 0xfffffec9) + BFD_RELOC_X86_64_PLT32);\n      fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),4,i.op[0].disps,1,bVar6);\n      return;\n    }\n    bVar6 = reloc(uVar19,1,1,other);\n    pfVar10 = fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),uVar19,i.op[0].disps,1,bVar6);\n    if (uVar19 != 1) {\n      return;\n    }\n    *(byte *)pfVar10 = *(byte *)pfVar10 | 0x80;\n    return;\n  }\n  if ((i.tm.opcode_modifier._1_1_ & 1) != 0) {\n    if (i.prefix[3] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      bVar30 = flag_code != CODE_16BIT;\n    }\n    else {\n      bVar30 = flag_code == CODE_16BIT;\n    }\n    uVar19 = (uint)(i.prefix[3] != '\0');\n    if (i.prefix[6] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      uVar19 = uVar19 + 1;\n    }\n    uVar28 = (-(uint)!bVar30 & 2) + 2;\n    if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }\n    puVar21 = (uchar *)frag_more((long)(int)(uVar19 + 3 + uVar28));\n    if (i.prefix[3] != '\0') {\n      *puVar21 = 'f';\n      puVar21 = puVar21 + 1;\n    }\n    puVar13 = puVar21 + 1;\n    if (i.prefix[6] != '\0') {\n      *puVar21 = i.prefix[6];\n      puVar13 = puVar21 + 2;\n      puVar21 = puVar21 + 1;\n    }\n    *puVar21 = (uchar)i.tm.base_opcode;\n    if ((i.op[1].disps)->field_0x18 == '\x02') {\n      uVar29 = (i.op[1].disps)->X_add_number;\n      if (((uVar28 == 2) && (0xffff < uVar29)) && (0xffff < uVar29 + 0x8000)) {\n        pcVar9 = (char *)dcgettext(0,"16-bit jump out of range",5);\n        as_bad(pcVar9);\n        return;\n      }\n      number_to_chars_littleendian((char *)puVar13,uVar29,uVar28);\n    }\n    else {\n      bVar6 = reloc(uVar28,0,0,i.reloc[1]);\n      fix_new_exp(frag_now,(int)puVar13 - ((int)frag_now + 0x80),uVar28,i.op[1].disps,0,bVar6);\n    }\n    pcVar9 = i.tm.name;\n    if ((i.op[0].disps)->field_0x18 != '\x02') {\n      pcVar8 = (char *)dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      as_bad(pcVar8,pcVar9);\n    }\n    vVar12 = (i.op[0].disps)->X_add_number;\n    iVar23 = 2;\n    puVar13 = puVar13 + (int)uVar28;\nLAB_0013817e:\n    number_to_chars_littleendian((char *)puVar13,vVar12,iVar23);\n    return;\n  }\n  if ((avoid_fence == 0) || (i.tm.base_opcode != 0xfae)) {\n    if (omit_lock_prefix != 0) {\n      if (i.tm.base_opcode == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      i.prefix[5] = '\0';\n    }\n  }\n  else {\n    if (((i.operands == 1) && (i.imm_operands == 1)) &&\n       ((((i.op[0].disps)->X_add_number & 0xffffffffffffffefU) == 0xe8 ||\n        ((i.op[0].disps)->X_add_number == 0xf0)))) {\n      puVar13 = (uchar *)frag_more(5);\n      iVar23 = 5;\n      vVar12 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (omit_lock_prefix != 0) goto LAB_00137bee;\n  }\n  if ((i.tm.opcode_modifier._4_4_ & 0x7000600) != 0) {\n    lVar20 = 0;\n    do {\n      if (i.prefix[lVar20] != 0) {\n        uVar19 = (uint)lVar20;\n        if (uVar19 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar19 < 3) {\n          frag_append_1_char((uint)i.prefix[lVar20]);\n        }\n        else if (uVar19 != 6) goto LAB_00137a7e;\n      }\n      lVar20 = lVar20 + 1;\n    } while (lVar20 != 7);\n    if (i.vrex != 0) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    pcVar9 = frag_more((ulong)i.vex.length);\n    if (i.vex.length != 0) {\n      lVar20 = 0;\n      do {\n        pcVar9[lVar20] = i.vex.bytes[lVar20];\n        lVar20 = lVar20 + 1;\n      } while ((uint)lVar20 < i.vex.length);\n    }\n    goto LAB_00137e10;\n  }\n  if (i.tm.opcode_length != '\x01') {\n    if (i.tm.opcode_length == '\0') {\n      pcVar9 = (char *)dcgettext(0,"pseudo prefix without instruction",5);\n      as_bad_where(pfVar3->fr_file,pfVar3->fr_line,pcVar9);\n      return;\n    }\n    if (i.tm.opcode_length == '\x02') {\n      if ((i.tm.base_opcode & 0xff0000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x10 & 0xff;\n        if ((i.tm.cpu_flags.array[0]._2_1_ & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        add_prefix(uVar19);\n      }\n    }\n    else {\n      if (i.tm.opcode_length != '\x03') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((i.tm.base_opcode & 0xff000000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x18;\nLAB_00137dbf:\n        if ((uVar19 != 0xf3) || (i.prefix[4] != 0xf3)) goto LAB_00137dd0;\n      }\n    }\n  }\n  if ((((x86_elf_abi == X86_64_X32_ABI) && (i.operands == 2)) &&\n      (i.reloc[0] == BFD_RELOC_X86_64_GOTTPOFF)) && (i.prefix[6] == '\0')) {\n    add_prefix(0x40);\n  }\n  puVar21 = i.prefix;\n  do {\n    while (*puVar21 == 0) {\n      puVar21 = puVar21 + 1;\n      if (puVar21 == &i.field_0x12b) goto LAB_00137e10;\n    }\n    frag_append_1_char((uint)*puVar21);\n    puVar21 = puVar21 + 1;\n  } while (puVar21 != &i.field_0x12b);\nLAB_00137e10:\n  if (i.tm.opcode_length == '\x01') {\n    frag_append_1_char(i.tm.base_opcode);\n  }\n  else {\n    if (i.tm.opcode_length == '\x03') {\n      pcVar8 = frag_more(3);\n      pcVar9 = pcVar8 + 1;\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else if (i.tm.opcode_length == '\x04') {\n      pcVar8 = frag_more(4);\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x18);\n      pcVar9 = pcVar8 + 2;\n      pcVar8[1] = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      pcVar9 = frag_more(2);\n    }\n    *pcVar9 = (char)(i.tm.base_opcode >> 8);\n    pcVar9[1] = (char)i.tm.base_opcode;\n  }\n  if ((((i.tm.opcode_modifier._0_1_ & 8) != 0) &&\n      (frag_append_1_char(i.rm.reg * 8 | i.rm.mode << 6 | i.rm.regmem), i.rm.regmem == 4)) &&\n     ((i.rm.mode != 3 &&\n      ((i.base_reg == (reg_entry *)0x0 || (((ulong)(i.base_reg)->reg_type & 0x40000000) == 0)))))) {\n    frag_append_1_char(i.sib.index * 8 | i.sib.scale << 6 | i.sib.base);\n  }\n  if (i.disp_operands != 0) {\n    if (i.operands == 0) {\n      return;\n    }\n    uVar29 = 0;\n    uVar19 = i.operands;\n    do {\n      uVar28 = i.operands;\n      if ((*(byte *)((long)i.types + uVar29 * 8 + 2) & 0x1f) != 0) {\n        peVar15 = i.op[uVar29].disps;\n        bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n        bVar17 = bVar16 >> 4 & 1;\n        if (peVar15->field_0x18 == '\x02') {\n          lVar20 = peVar15->X_add_number;\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) == 0) {\n              bVar16 = bVar16 >> 1 & 1;\n              sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n              iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n            }\n            else {\n              sVar25 = 1;\n              iVar23 = 1;\n              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);\n            }\n          }\n          else {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          vVar12 = offset_in_range(lVar20,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n          uVar28 = i.operands;\n        }\n        else {\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar17 = bVar16 >> 1;\n            bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n            uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2;\n            uVar28 = i.flags[uVar29];\n          }\n          else {\n            uVar28 = i.flags[uVar29];\n            if ((bVar16 & 1) != 0) goto LAB_00138302;\n            uVar27 = 8;\n          }\n          local_58 = bVar16 >> 3 & 1;\n          uVar28 = uVar28 & 1;\n          if ((uVar28 != 0) && (i.imm_operands != 0)) {\n            uVar11 = 0;\n            cVar24 = '\0';\n            do {\n              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }\n              uVar11 = uVar11 + 1;\n            } while ((uint)uVar11 < uVar19);\n            if (cVar24 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          pcVar9 = frag_more((long)(int)uVar27);\n          bVar6 = reloc(uVar27,uVar28,local_58,i.reloc[uVar29]);\n          pfVar26 = frag_now;\n          if (GOT_symbol == (symbolS *)0x0) {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            if (GOT_symbol == peVar15->X_add_symbol) {\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }\n          }\nLAB_001383d2:\n          pfVar10 = fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6);\n          prVar2 = i.base_reg;\n          uVar28 = i.operands;\n          if (i.prefix[3] == '\0') {\n            if (generate_relax_relocations == 0) {\n              if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }\n            }\n            else if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar19 = uVar28;\n      uVar29 = uVar29 + 1;\n    } while ((uint)uVar29 < uVar19);\n  }\n  if ((i.imm_operands != 0) && (i.operands != 0)) {\nLAB_00137e9a:\n    uVar29 = 0;\n    do {\n      if (((i.rounding == (RC_Operation *)0x0) || ((i.rounding)->operand != (int)uVar29)) &&\n         ((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0xfc) != 0)) {\n        bVar16 = *(byte *)((long)i.types + uVar29 * 8 + 1);\n        if ((i.op[uVar29].disps)->field_0x18 == '\x02') {\n          if ((char)bVar16 < '\0') {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n            iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            sVar25 = 1;\n            iVar23 = 1;\n          }\n          vVar12 = offset_in_range((i.op[uVar29].disps)->X_add_number,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n        }\n        else {\n          if ((char)bVar16 < '\0') {\n            uVar19 = 8;\n            sVar25 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            uVar19 = 1;\n            sVar25 = 1;\n          }\n          uVar28 = 0;\n          if ((((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q')) && (uVar28 = 0, i.suffix == '\0')) {\n            uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1;\n          }\n          pcVar9 = frag_more(sVar25);\n          bVar6 = reloc(uVar19,0,uVar28,i.reloc[uVar29]);\n          if ((bVar6 - BFD_RELOC_64 < 2) || (bVar6 == BFD_RELOC_X86_64_32S)) {\n            peVar15 = i.op[uVar29].disps;\n            if ((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)) {\n              if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\nLAB_00137fa9:\n          fix_new_exp(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6);\n        }\n      }\n      uVar19 = (int)uVar29 + 1;\n      uVar29 = (ulong)uVar19;\n    } while (uVar19 < i.operands);\n  }\n  return;\n}\n\n" comment comment (function_definition "void output_insn(void)\n\n{\n  frag *pfVar1;\n  bfd_reloc_code_real other;\n  reg_entry *prVar2;\n  fragS *pfVar3;\n  uchar uVar4;\n  bfd_boolean bVar5;\n  bfd_reloc_code_real_type bVar6;\n  addressT aVar7;\n  char *pcVar8;\n  symbolS *symbol;\n  char *pcVar9;\n  fixS *pfVar10;\n  ulong uVar11;\n  valueT vVar12;\n  uchar *puVar13;\n  expressionS *peVar14;\n  expressionS *peVar15;\n  byte bVar16;\n  byte bVar17;\n  long lVar18;\n  uint uVar19;\n  long lVar20;\n  uchar *puVar21;\n  uint uVar22;\n  int iVar23;\n  char cVar24;\n  size_t sVar25;\n  fragS *pfVar26;\n  offsetT offset;\n  uint uVar27;\n  uint uVar28;\n  ulong uVar29;\n  bool bVar30;\n  uint local_58;\n  \n  dwarf2_emit_insn(0);\n  pfVar3 = frag_now;\n  aVar7 = frag_now_fix();\n  other = i.reloc[0];\n  if ((i.tm.opcode_modifier._0_1_ & 0x20) != 0) {\n    uVar19 = (uint)(i.disp_encoding == Cpu386) * 2;\n    if (i.prefix[3] != '\0') {\n      uVar28 = 2;\n      i.prefixes = i.prefixes - 1;\n      bVar30 = flag_code != CODE_16BIT;\n    }\n    else {\n      bVar30 = flag_code == CODE_16BIT;\n      uVar28 = 1;\n    }\n    uVar27 = uVar28;\n    uVar22 = (uint)(i.prefix[3] != '\0');\n    if ((i.prefix[1] & 0xef) == 0x2e) {\n      i.prefixes = i.prefixes - 1;\n      uVar27 = uVar28 + 1;\n      uVar22 = uVar28;\n    }\n    uVar28 = uVar27;\n    if (i.prefix[6] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      uVar28 = uVar27 + 1;\n      uVar22 = uVar27;\n    }\n    if (i.prefix[4] != '\0') {\n      frag_append_1_char((uint)i.prefix[4]);\n      i.prefixes = i.prefixes - 1;\n    }\n    if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }\n    frag_grow((long)(int)(uVar22 + 6));\n    puVar21 = (uchar *)frag_more((long)(int)uVar28);\n    if (i.prefix[3] != '\0') {\n      *puVar21 = 'f';\n      puVar21 = puVar21 + 1;\n    }\n    if ((i.prefix[1] & 0xef) == 0x2e) {\n      *puVar21 = i.prefix[1];\n      puVar21 = puVar21 + 1;\n    }\n    if (i.prefix[6] != '\0') {\n      *puVar21 = i.prefix[6];\n      puVar21 = puVar21 + 1;\n    }\n    uVar4 = (uchar)i.tm.base_opcode;\n    *puVar21 = uVar4;\n    uVar28 = uVar19;\n    if (uVar4 != 0xeb) {\n      uVar28 = uVar19 | 8;\n      if ((cpu_arch_flags.array[0]._0_1_ & 4) != 0) {\n        uVar28 = uVar19 | 4;\n      }\n    }\n    if ((byte)((i.op[0].disps)->field_0x18 - 2) < 2) {\n      symbol = (i.op[0].disps)->X_add_symbol;\n      offset = (i.op[0].disps)->X_add_number;\n    }\n    else {\n      symbol = make_expr_symbol(i.op[0].disps);\n      offset = 0;\n    }\n    frag_var(rs_machine_dependent,5,(ulong)i.reloc[0],uVar28 | bVar30,symbol,offset,(char *)puVar21)\n    ;\n    return;\n  }\n  if ((i.tm.opcode_modifier._0_1_ & 0xc0) != 0) {\n    if ((char)i.tm.opcode_modifier._0_1_ < '\0') {\n      if (i.prefix[2] != '\0') {\n        frag_append_1_char(0x67);\n        i.prefixes = i.prefixes - 1;\n      }\n      uVar19 = 1;\n      if ((i.prefix[1] & 0xef) == 0x2e) {\n        frag_append_1_char((uint)i.prefix[1]);\n        i.prefixes = i.prefixes - 1;\n      }\n    }\n    else {\n      if (flag_code == CODE_16BIT) {\n        if (i.prefix[3] == '\0') {\n          uVar19 = 2;\n          goto LAB_00137acf;\n        }\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n      }\n      else if (i.prefix[3] != '\0') {\n        uVar19 = 2;\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n        goto LAB_00137acf;\n      }\n      uVar19 = 4;\n    }\nLAB_00137acf:\n    if (i.prefix[6] != '\0') {\n      frag_append_1_char((uint)i.prefix[6]);\n      i.prefixes = i.prefixes - 1;\n    }\n    if (i.prefix[4] != '\0') {\n      frag_append_1_char((uint)i.prefix[4]);\n      i.prefixes = i.prefixes - 1;\n    }\n    if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }\n    pcVar8 = frag_more((long)(int)(i.tm.opcode_length + uVar19));\n    pcVar9 = pcVar8;\n    if (i.tm.opcode_length != '\x01') {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      pcVar9 = pcVar8 + 1;\n      *pcVar8 = (char)(i.tm.base_opcode >> 8);\n    }\n    iVar23 = (int)pcVar9 + 1;\n    *pcVar9 = (char)i.tm.base_opcode;\n    if ((uVar19 == 4) && (other == BFD_RELOC_NONE)) {\n      bVar5 = need_plt32_p((i.op[0].disps)->X_add_symbol);\n      bVar6 = reloc(4,1,1,(-(uint)(bVar5 == 0) & 0xfffffec9) + BFD_RELOC_X86_64_PLT32);\n      fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),4,i.op[0].disps,1,bVar6);\n      return;\n    }\n    bVar6 = reloc(uVar19,1,1,other);\n    pfVar10 = fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),uVar19,i.op[0].disps,1,bVar6);\n    if (uVar19 != 1) {\n      return;\n    }\n    *(byte *)pfVar10 = *(byte *)pfVar10 | 0x80;\n    return;\n  }\n  if ((i.tm.opcode_modifier._1_1_ & 1) != 0) {\n    if (i.prefix[3] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      bVar30 = flag_code != CODE_16BIT;\n    }\n    else {\n      bVar30 = flag_code == CODE_16BIT;\n    }\n    uVar19 = (uint)(i.prefix[3] != '\0');\n    if (i.prefix[6] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      uVar19 = uVar19 + 1;\n    }\n    uVar28 = (-(uint)!bVar30 & 2) + 2;\n    if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }\n    puVar21 = (uchar *)frag_more((long)(int)(uVar19 + 3 + uVar28));\n    if (i.prefix[3] != '\0') {\n      *puVar21 = 'f';\n      puVar21 = puVar21 + 1;\n    }\n    puVar13 = puVar21 + 1;\n    if (i.prefix[6] != '\0') {\n      *puVar21 = i.prefix[6];\n      puVar13 = puVar21 + 2;\n      puVar21 = puVar21 + 1;\n    }\n    *puVar21 = (uchar)i.tm.base_opcode;\n    if ((i.op[1].disps)->field_0x18 == '\x02') {\n      uVar29 = (i.op[1].disps)->X_add_number;\n      if (((uVar28 == 2) && (0xffff < uVar29)) && (0xffff < uVar29 + 0x8000)) {\n        pcVar9 = (char *)dcgettext(0,"16-bit jump out of range",5);\n        as_bad(pcVar9);\n        return;\n      }\n      number_to_chars_littleendian((char *)puVar13,uVar29,uVar28);\n    }\n    else {\n      bVar6 = reloc(uVar28,0,0,i.reloc[1]);\n      fix_new_exp(frag_now,(int)puVar13 - ((int)frag_now + 0x80),uVar28,i.op[1].disps,0,bVar6);\n    }\n    pcVar9 = i.tm.name;\n    if ((i.op[0].disps)->field_0x18 != '\x02') {\n      pcVar8 = (char *)dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      as_bad(pcVar8,pcVar9);\n    }\n    vVar12 = (i.op[0].disps)->X_add_number;\n    iVar23 = 2;\n    puVar13 = puVar13 + (int)uVar28;\nLAB_0013817e:\n    number_to_chars_littleendian((char *)puVar13,vVar12,iVar23);\n    return;\n  }\n  if ((avoid_fence == 0) || (i.tm.base_opcode != 0xfae)) {\n    if (omit_lock_prefix != 0) {\n      if (i.tm.base_opcode == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      i.prefix[5] = '\0';\n    }\n  }\n  else {\n    if (((i.operands == 1) && (i.imm_operands == 1)) &&\n       ((((i.op[0].disps)->X_add_number & 0xffffffffffffffefU) == 0xe8 ||\n        ((i.op[0].disps)->X_add_number == 0xf0)))) {\n      puVar13 = (uchar *)frag_more(5);\n      iVar23 = 5;\n      vVar12 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (omit_lock_prefix != 0) goto LAB_00137bee;\n  }\n  if ((i.tm.opcode_modifier._4_4_ & 0x7000600) != 0) {\n    lVar20 = 0;\n    do {\n      if (i.prefix[lVar20] != 0) {\n        uVar19 = (uint)lVar20;\n        if (uVar19 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar19 < 3) {\n          frag_append_1_char((uint)i.prefix[lVar20]);\n        }\n        else if (uVar19 != 6) goto LAB_00137a7e;\n      }\n      lVar20 = lVar20 + 1;\n    } while (lVar20 != 7);\n    if (i.vrex != 0) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    pcVar9 = frag_more((ulong)i.vex.length);\n    if (i.vex.length != 0) {\n      lVar20 = 0;\n      do {\n        pcVar9[lVar20] = i.vex.bytes[lVar20];\n        lVar20 = lVar20 + 1;\n      } while ((uint)lVar20 < i.vex.length);\n    }\n    goto LAB_00137e10;\n  }\n  if (i.tm.opcode_length != '\x01') {\n    if (i.tm.opcode_length == '\0') {\n      pcVar9 = (char *)dcgettext(0,"pseudo prefix without instruction",5);\n      as_bad_where(pfVar3->fr_file,pfVar3->fr_line,pcVar9);\n      return;\n    }\n    if (i.tm.opcode_length == '\x02') {\n      if ((i.tm.base_opcode & 0xff0000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x10 & 0xff;\n        if ((i.tm.cpu_flags.array[0]._2_1_ & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        add_prefix(uVar19);\n      }\n    }\n    else {\n      if (i.tm.opcode_length != '\x03') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((i.tm.base_opcode & 0xff000000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x18;\nLAB_00137dbf:\n        if ((uVar19 != 0xf3) || (i.prefix[4] != 0xf3)) goto LAB_00137dd0;\n      }\n    }\n  }\n  if ((((x86_elf_abi == X86_64_X32_ABI) && (i.operands == 2)) &&\n      (i.reloc[0] == BFD_RELOC_X86_64_GOTTPOFF)) && (i.prefix[6] == '\0')) {\n    add_prefix(0x40);\n  }\n  puVar21 = i.prefix;\n  do {\n    while (*puVar21 == 0) {\n      puVar21 = puVar21 + 1;\n      if (puVar21 == &i.field_0x12b) goto LAB_00137e10;\n    }\n    frag_append_1_char((uint)*puVar21);\n    puVar21 = puVar21 + 1;\n  } while (puVar21 != &i.field_0x12b);\nLAB_00137e10:\n  if (i.tm.opcode_length == '\x01') {\n    frag_append_1_char(i.tm.base_opcode);\n  }\n  else {\n    if (i.tm.opcode_length == '\x03') {\n      pcVar8 = frag_more(3);\n      pcVar9 = pcVar8 + 1;\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else if (i.tm.opcode_length == '\x04') {\n      pcVar8 = frag_more(4);\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x18);\n      pcVar9 = pcVar8 + 2;\n      pcVar8[1] = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      pcVar9 = frag_more(2);\n    }\n    *pcVar9 = (char)(i.tm.base_opcode >> 8);\n    pcVar9[1] = (char)i.tm.base_opcode;\n  }\n  if ((((i.tm.opcode_modifier._0_1_ & 8) != 0) &&\n      (frag_append_1_char(i.rm.reg * 8 | i.rm.mode << 6 | i.rm.regmem), i.rm.regmem == 4)) &&\n     ((i.rm.mode != 3 &&\n      ((i.base_reg == (reg_entry *)0x0 || (((ulong)(i.base_reg)->reg_type & 0x40000000) == 0)))))) {\n    frag_append_1_char(i.sib.index * 8 | i.sib.scale << 6 | i.sib.base);\n  }\n  if (i.disp_operands != 0) {\n    if (i.operands == 0) {\n      return;\n    }\n    uVar29 = 0;\n    uVar19 = i.operands;\n    do {\n      uVar28 = i.operands;\n      if ((*(byte *)((long)i.types + uVar29 * 8 + 2) & 0x1f) != 0) {\n        peVar15 = i.op[uVar29].disps;\n        bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n        bVar17 = bVar16 >> 4 & 1;\n        if (peVar15->field_0x18 == '\x02') {\n          lVar20 = peVar15->X_add_number;\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) == 0) {\n              bVar16 = bVar16 >> 1 & 1;\n              sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n              iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n            }\n            else {\n              sVar25 = 1;\n              iVar23 = 1;\n              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);\n            }\n          }\n          else {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          vVar12 = offset_in_range(lVar20,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n          uVar28 = i.operands;\n        }\n        else {\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar17 = bVar16 >> 1;\n            bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n            uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2;\n            uVar28 = i.flags[uVar29];\n          }\n          else {\n            uVar28 = i.flags[uVar29];\n            if ((bVar16 & 1) != 0) goto LAB_00138302;\n            uVar27 = 8;\n          }\n          local_58 = bVar16 >> 3 & 1;\n          uVar28 = uVar28 & 1;\n          if ((uVar28 != 0) && (i.imm_operands != 0)) {\n            uVar11 = 0;\n            cVar24 = '\0';\n            do {\n              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }\n              uVar11 = uVar11 + 1;\n            } while ((uint)uVar11 < uVar19);\n            if (cVar24 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          pcVar9 = frag_more((long)(int)uVar27);\n          bVar6 = reloc(uVar27,uVar28,local_58,i.reloc[uVar29]);\n          pfVar26 = frag_now;\n          if (GOT_symbol == (symbolS *)0x0) {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            if (GOT_symbol == peVar15->X_add_symbol) {\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }\n          }\nLAB_001383d2:\n          pfVar10 = fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6);\n          prVar2 = i.base_reg;\n          uVar28 = i.operands;\n          if (i.prefix[3] == '\0') {\n            if (generate_relax_relocations == 0) {\n              if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }\n            }\n            else if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar19 = uVar28;\n      uVar29 = uVar29 + 1;\n    } while ((uint)uVar29 < uVar19);\n  }\n  if ((i.imm_operands != 0) && (i.operands != 0)) {\nLAB_00137e9a:\n    uVar29 = 0;\n    do {\n      if (((i.rounding == (RC_Operation *)0x0) || ((i.rounding)->operand != (int)uVar29)) &&\n         ((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0xfc) != 0)) {\n        bVar16 = *(byte *)((long)i.types + uVar29 * 8 + 1);\n        if ((i.op[uVar29].disps)->field_0x18 == '\x02') {\n          if ((char)bVar16 < '\0') {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n            iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            sVar25 = 1;\n            iVar23 = 1;\n          }\n          vVar12 = offset_in_range((i.op[uVar29].disps)->X_add_number,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n        }\n        else {\n          if ((char)bVar16 < '\0') {\n            uVar19 = 8;\n            sVar25 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            uVar19 = 1;\n            sVar25 = 1;\n          }\n          uVar28 = 0;\n          if ((((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q')) && (uVar28 = 0, i.suffix == '\0')) {\n            uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1;\n          }\n          pcVar9 = frag_more(sVar25);\n          bVar6 = reloc(uVar19,0,uVar28,i.reloc[uVar29]);\n          if ((bVar6 - BFD_RELOC_64 < 2) || (bVar6 == BFD_RELOC_X86_64_32S)) {\n            peVar15 = i.op[uVar29].disps;\n            if ((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)) {\n              if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\nLAB_00137fa9:\n          fix_new_exp(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6);\n        }\n      }\n      uVar19 = (int)uVar29 + 1;\n      uVar29 = (ulong)uVar19;\n    } while (uVar19 < i.operands);\n  }\n  return;\n}" primitive_type (function_declarator "output_insn(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  frag *pfVar1;\n  bfd_reloc_code_real other;\n  reg_entry *prVar2;\n  fragS *pfVar3;\n  uchar uVar4;\n  bfd_boolean bVar5;\n  bfd_reloc_code_real_type bVar6;\n  addressT aVar7;\n  char *pcVar8;\n  symbolS *symbol;\n  char *pcVar9;\n  fixS *pfVar10;\n  ulong uVar11;\n  valueT vVar12;\n  uchar *puVar13;\n  expressionS *peVar14;\n  expressionS *peVar15;\n  byte bVar16;\n  byte bVar17;\n  long lVar18;\n  uint uVar19;\n  long lVar20;\n  uchar *puVar21;\n  uint uVar22;\n  int iVar23;\n  char cVar24;\n  size_t sVar25;\n  fragS *pfVar26;\n  offsetT offset;\n  uint uVar27;\n  uint uVar28;\n  ulong uVar29;\n  bool bVar30;\n  uint local_58;\n  \n  dwarf2_emit_insn(0);\n  pfVar3 = frag_now;\n  aVar7 = frag_now_fix();\n  other = i.reloc[0];\n  if ((i.tm.opcode_modifier._0_1_ & 0x20) != 0) {\n    uVar19 = (uint)(i.disp_encoding == Cpu386) * 2;\n    if (i.prefix[3] != '\0') {\n      uVar28 = 2;\n      i.prefixes = i.prefixes - 1;\n      bVar30 = flag_code != CODE_16BIT;\n    }\n    else {\n      bVar30 = flag_code == CODE_16BIT;\n      uVar28 = 1;\n    }\n    uVar27 = uVar28;\n    uVar22 = (uint)(i.prefix[3] != '\0');\n    if ((i.prefix[1] & 0xef) == 0x2e) {\n      i.prefixes = i.prefixes - 1;\n      uVar27 = uVar28 + 1;\n      uVar22 = uVar28;\n    }\n    uVar28 = uVar27;\n    if (i.prefix[6] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      uVar28 = uVar27 + 1;\n      uVar22 = uVar27;\n    }\n    if (i.prefix[4] != '\0') {\n      frag_append_1_char((uint)i.prefix[4]);\n      i.prefixes = i.prefixes - 1;\n    }\n    if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }\n    frag_grow((long)(int)(uVar22 + 6));\n    puVar21 = (uchar *)frag_more((long)(int)uVar28);\n    if (i.prefix[3] != '\0') {\n      *puVar21 = 'f';\n      puVar21 = puVar21 + 1;\n    }\n    if ((i.prefix[1] & 0xef) == 0x2e) {\n      *puVar21 = i.prefix[1];\n      puVar21 = puVar21 + 1;\n    }\n    if (i.prefix[6] != '\0') {\n      *puVar21 = i.prefix[6];\n      puVar21 = puVar21 + 1;\n    }\n    uVar4 = (uchar)i.tm.base_opcode;\n    *puVar21 = uVar4;\n    uVar28 = uVar19;\n    if (uVar4 != 0xeb) {\n      uVar28 = uVar19 | 8;\n      if ((cpu_arch_flags.array[0]._0_1_ & 4) != 0) {\n        uVar28 = uVar19 | 4;\n      }\n    }\n    if ((byte)((i.op[0].disps)->field_0x18 - 2) < 2) {\n      symbol = (i.op[0].disps)->X_add_symbol;\n      offset = (i.op[0].disps)->X_add_number;\n    }\n    else {\n      symbol = make_expr_symbol(i.op[0].disps);\n      offset = 0;\n    }\n    frag_var(rs_machine_dependent,5,(ulong)i.reloc[0],uVar28 | bVar30,symbol,offset,(char *)puVar21)\n    ;\n    return;\n  }\n  if ((i.tm.opcode_modifier._0_1_ & 0xc0) != 0) {\n    if ((char)i.tm.opcode_modifier._0_1_ < '\0') {\n      if (i.prefix[2] != '\0') {\n        frag_append_1_char(0x67);\n        i.prefixes = i.prefixes - 1;\n      }\n      uVar19 = 1;\n      if ((i.prefix[1] & 0xef) == 0x2e) {\n        frag_append_1_char((uint)i.prefix[1]);\n        i.prefixes = i.prefixes - 1;\n      }\n    }\n    else {\n      if (flag_code == CODE_16BIT) {\n        if (i.prefix[3] == '\0') {\n          uVar19 = 2;\n          goto LAB_00137acf;\n        }\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n      }\n      else if (i.prefix[3] != '\0') {\n        uVar19 = 2;\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n        goto LAB_00137acf;\n      }\n      uVar19 = 4;\n    }\nLAB_00137acf:\n    if (i.prefix[6] != '\0') {\n      frag_append_1_char((uint)i.prefix[6]);\n      i.prefixes = i.prefixes - 1;\n    }\n    if (i.prefix[4] != '\0') {\n      frag_append_1_char((uint)i.prefix[4]);\n      i.prefixes = i.prefixes - 1;\n    }\n    if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }\n    pcVar8 = frag_more((long)(int)(i.tm.opcode_length + uVar19));\n    pcVar9 = pcVar8;\n    if (i.tm.opcode_length != '\x01') {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      pcVar9 = pcVar8 + 1;\n      *pcVar8 = (char)(i.tm.base_opcode >> 8);\n    }\n    iVar23 = (int)pcVar9 + 1;\n    *pcVar9 = (char)i.tm.base_opcode;\n    if ((uVar19 == 4) && (other == BFD_RELOC_NONE)) {\n      bVar5 = need_plt32_p((i.op[0].disps)->X_add_symbol);\n      bVar6 = reloc(4,1,1,(-(uint)(bVar5 == 0) & 0xfffffec9) + BFD_RELOC_X86_64_PLT32);\n      fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),4,i.op[0].disps,1,bVar6);\n      return;\n    }\n    bVar6 = reloc(uVar19,1,1,other);\n    pfVar10 = fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),uVar19,i.op[0].disps,1,bVar6);\n    if (uVar19 != 1) {\n      return;\n    }\n    *(byte *)pfVar10 = *(byte *)pfVar10 | 0x80;\n    return;\n  }\n  if ((i.tm.opcode_modifier._1_1_ & 1) != 0) {\n    if (i.prefix[3] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      bVar30 = flag_code != CODE_16BIT;\n    }\n    else {\n      bVar30 = flag_code == CODE_16BIT;\n    }\n    uVar19 = (uint)(i.prefix[3] != '\0');\n    if (i.prefix[6] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      uVar19 = uVar19 + 1;\n    }\n    uVar28 = (-(uint)!bVar30 & 2) + 2;\n    if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }\n    puVar21 = (uchar *)frag_more((long)(int)(uVar19 + 3 + uVar28));\n    if (i.prefix[3] != '\0') {\n      *puVar21 = 'f';\n      puVar21 = puVar21 + 1;\n    }\n    puVar13 = puVar21 + 1;\n    if (i.prefix[6] != '\0') {\n      *puVar21 = i.prefix[6];\n      puVar13 = puVar21 + 2;\n      puVar21 = puVar21 + 1;\n    }\n    *puVar21 = (uchar)i.tm.base_opcode;\n    if ((i.op[1].disps)->field_0x18 == '\x02') {\n      uVar29 = (i.op[1].disps)->X_add_number;\n      if (((uVar28 == 2) && (0xffff < uVar29)) && (0xffff < uVar29 + 0x8000)) {\n        pcVar9 = (char *)dcgettext(0,"16-bit jump out of range",5);\n        as_bad(pcVar9);\n        return;\n      }\n      number_to_chars_littleendian((char *)puVar13,uVar29,uVar28);\n    }\n    else {\n      bVar6 = reloc(uVar28,0,0,i.reloc[1]);\n      fix_new_exp(frag_now,(int)puVar13 - ((int)frag_now + 0x80),uVar28,i.op[1].disps,0,bVar6);\n    }\n    pcVar9 = i.tm.name;\n    if ((i.op[0].disps)->field_0x18 != '\x02') {\n      pcVar8 = (char *)dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      as_bad(pcVar8,pcVar9);\n    }\n    vVar12 = (i.op[0].disps)->X_add_number;\n    iVar23 = 2;\n    puVar13 = puVar13 + (int)uVar28;\nLAB_0013817e:\n    number_to_chars_littleendian((char *)puVar13,vVar12,iVar23);\n    return;\n  }\n  if ((avoid_fence == 0) || (i.tm.base_opcode != 0xfae)) {\n    if (omit_lock_prefix != 0) {\n      if (i.tm.base_opcode == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      i.prefix[5] = '\0';\n    }\n  }\n  else {\n    if (((i.operands == 1) && (i.imm_operands == 1)) &&\n       ((((i.op[0].disps)->X_add_number & 0xffffffffffffffefU) == 0xe8 ||\n        ((i.op[0].disps)->X_add_number == 0xf0)))) {\n      puVar13 = (uchar *)frag_more(5);\n      iVar23 = 5;\n      vVar12 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (omit_lock_prefix != 0) goto LAB_00137bee;\n  }\n  if ((i.tm.opcode_modifier._4_4_ & 0x7000600) != 0) {\n    lVar20 = 0;\n    do {\n      if (i.prefix[lVar20] != 0) {\n        uVar19 = (uint)lVar20;\n        if (uVar19 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar19 < 3) {\n          frag_append_1_char((uint)i.prefix[lVar20]);\n        }\n        else if (uVar19 != 6) goto LAB_00137a7e;\n      }\n      lVar20 = lVar20 + 1;\n    } while (lVar20 != 7);\n    if (i.vrex != 0) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    pcVar9 = frag_more((ulong)i.vex.length);\n    if (i.vex.length != 0) {\n      lVar20 = 0;\n      do {\n        pcVar9[lVar20] = i.vex.bytes[lVar20];\n        lVar20 = lVar20 + 1;\n      } while ((uint)lVar20 < i.vex.length);\n    }\n    goto LAB_00137e10;\n  }\n  if (i.tm.opcode_length != '\x01') {\n    if (i.tm.opcode_length == '\0') {\n      pcVar9 = (char *)dcgettext(0,"pseudo prefix without instruction",5);\n      as_bad_where(pfVar3->fr_file,pfVar3->fr_line,pcVar9);\n      return;\n    }\n    if (i.tm.opcode_length == '\x02') {\n      if ((i.tm.base_opcode & 0xff0000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x10 & 0xff;\n        if ((i.tm.cpu_flags.array[0]._2_1_ & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        add_prefix(uVar19);\n      }\n    }\n    else {\n      if (i.tm.opcode_length != '\x03') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((i.tm.base_opcode & 0xff000000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x18;\nLAB_00137dbf:\n        if ((uVar19 != 0xf3) || (i.prefix[4] != 0xf3)) goto LAB_00137dd0;\n      }\n    }\n  }\n  if ((((x86_elf_abi == X86_64_X32_ABI) && (i.operands == 2)) &&\n      (i.reloc[0] == BFD_RELOC_X86_64_GOTTPOFF)) && (i.prefix[6] == '\0')) {\n    add_prefix(0x40);\n  }\n  puVar21 = i.prefix;\n  do {\n    while (*puVar21 == 0) {\n      puVar21 = puVar21 + 1;\n      if (puVar21 == &i.field_0x12b) goto LAB_00137e10;\n    }\n    frag_append_1_char((uint)*puVar21);\n    puVar21 = puVar21 + 1;\n  } while (puVar21 != &i.field_0x12b);\nLAB_00137e10:\n  if (i.tm.opcode_length == '\x01') {\n    frag_append_1_char(i.tm.base_opcode);\n  }\n  else {\n    if (i.tm.opcode_length == '\x03') {\n      pcVar8 = frag_more(3);\n      pcVar9 = pcVar8 + 1;\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else if (i.tm.opcode_length == '\x04') {\n      pcVar8 = frag_more(4);\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x18);\n      pcVar9 = pcVar8 + 2;\n      pcVar8[1] = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      pcVar9 = frag_more(2);\n    }\n    *pcVar9 = (char)(i.tm.base_opcode >> 8);\n    pcVar9[1] = (char)i.tm.base_opcode;\n  }\n  if ((((i.tm.opcode_modifier._0_1_ & 8) != 0) &&\n      (frag_append_1_char(i.rm.reg * 8 | i.rm.mode << 6 | i.rm.regmem), i.rm.regmem == 4)) &&\n     ((i.rm.mode != 3 &&\n      ((i.base_reg == (reg_entry *)0x0 || (((ulong)(i.base_reg)->reg_type & 0x40000000) == 0)))))) {\n    frag_append_1_char(i.sib.index * 8 | i.sib.scale << 6 | i.sib.base);\n  }\n  if (i.disp_operands != 0) {\n    if (i.operands == 0) {\n      return;\n    }\n    uVar29 = 0;\n    uVar19 = i.operands;\n    do {\n      uVar28 = i.operands;\n      if ((*(byte *)((long)i.types + uVar29 * 8 + 2) & 0x1f) != 0) {\n        peVar15 = i.op[uVar29].disps;\n        bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n        bVar17 = bVar16 >> 4 & 1;\n        if (peVar15->field_0x18 == '\x02') {\n          lVar20 = peVar15->X_add_number;\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) == 0) {\n              bVar16 = bVar16 >> 1 & 1;\n              sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n              iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n            }\n            else {\n              sVar25 = 1;\n              iVar23 = 1;\n              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);\n            }\n          }\n          else {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          vVar12 = offset_in_range(lVar20,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n          uVar28 = i.operands;\n        }\n        else {\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar17 = bVar16 >> 1;\n            bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n            uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2;\n            uVar28 = i.flags[uVar29];\n          }\n          else {\n            uVar28 = i.flags[uVar29];\n            if ((bVar16 & 1) != 0) goto LAB_00138302;\n            uVar27 = 8;\n          }\n          local_58 = bVar16 >> 3 & 1;\n          uVar28 = uVar28 & 1;\n          if ((uVar28 != 0) && (i.imm_operands != 0)) {\n            uVar11 = 0;\n            cVar24 = '\0';\n            do {\n              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }\n              uVar11 = uVar11 + 1;\n            } while ((uint)uVar11 < uVar19);\n            if (cVar24 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          pcVar9 = frag_more((long)(int)uVar27);\n          bVar6 = reloc(uVar27,uVar28,local_58,i.reloc[uVar29]);\n          pfVar26 = frag_now;\n          if (GOT_symbol == (symbolS *)0x0) {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            if (GOT_symbol == peVar15->X_add_symbol) {\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }\n          }\nLAB_001383d2:\n          pfVar10 = fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6);\n          prVar2 = i.base_reg;\n          uVar28 = i.operands;\n          if (i.prefix[3] == '\0') {\n            if (generate_relax_relocations == 0) {\n              if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }\n            }\n            else if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar19 = uVar28;\n      uVar29 = uVar29 + 1;\n    } while ((uint)uVar29 < uVar19);\n  }\n  if ((i.imm_operands != 0) && (i.operands != 0)) {\nLAB_00137e9a:\n    uVar29 = 0;\n    do {\n      if (((i.rounding == (RC_Operation *)0x0) || ((i.rounding)->operand != (int)uVar29)) &&\n         ((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0xfc) != 0)) {\n        bVar16 = *(byte *)((long)i.types + uVar29 * 8 + 1);\n        if ((i.op[uVar29].disps)->field_0x18 == '\x02') {\n          if ((char)bVar16 < '\0') {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n            iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            sVar25 = 1;\n            iVar23 = 1;\n          }\n          vVar12 = offset_in_range((i.op[uVar29].disps)->X_add_number,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n        }\n        else {\n          if ((char)bVar16 < '\0') {\n            uVar19 = 8;\n            sVar25 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            uVar19 = 1;\n            sVar25 = 1;\n          }\n          uVar28 = 0;\n          if ((((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q')) && (uVar28 = 0, i.suffix == '\0')) {\n            uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1;\n          }\n          pcVar9 = frag_more(sVar25);\n          bVar6 = reloc(uVar19,0,uVar28,i.reloc[uVar29]);\n          if ((bVar6 - BFD_RELOC_64 < 2) || (bVar6 == BFD_RELOC_X86_64_32S)) {\n            peVar15 = i.op[uVar29].disps;\n            if ((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)) {\n              if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\nLAB_00137fa9:\n          fix_new_exp(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6);\n        }\n      }\n      uVar19 = (int)uVar29 + 1;\n      uVar29 = (ulong)uVar19;\n    } while (uVar19 < i.operands);\n  }\n  return;\n}" { (declaration "frag *pfVar1;" type_identifier (pointer_declarator "*pfVar1" * identifier) ;) (declaration "bfd_reloc_code_real other;" type_identifier identifier ;) (declaration "reg_entry *prVar2;" type_identifier (pointer_declarator "*prVar2" * identifier) ;) (declaration "fragS *pfVar3;" type_identifier (pointer_declarator "*pfVar3" * identifier) ;) (declaration "uchar uVar4;" type_identifier identifier ;) (declaration "bfd_boolean bVar5;" type_identifier identifier ;) (declaration "bfd_reloc_code_real_type bVar6;" type_identifier identifier ;) (declaration "addressT aVar7;" type_identifier identifier ;) (declaration "char *pcVar8;" primitive_type (pointer_declarator "*pcVar8" * identifier) ;) (declaration "symbolS *symbol;" type_identifier (pointer_declarator "*symbol" * identifier) ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "fixS *pfVar10;" type_identifier (pointer_declarator "*pfVar10" * identifier) ;) (declaration "ulong uVar11;" type_identifier identifier ;) (declaration "valueT vVar12;" type_identifier identifier ;) (declaration "uchar *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "expressionS *peVar14;" type_identifier (pointer_declarator "*peVar14" * identifier) ;) (declaration "expressionS *peVar15;" type_identifier (pointer_declarator "*peVar15" * identifier) ;) (declaration "byte bVar16;" type_identifier identifier ;) (declaration "byte bVar17;" type_identifier identifier ;) (declaration "long lVar18;" (sized_type_specifier "long" long) identifier ;) (declaration "uint uVar19;" type_identifier identifier ;) (declaration "long lVar20;" (sized_type_specifier "long" long) identifier ;) (declaration "uchar *puVar21;" type_identifier (pointer_declarator "*puVar21" * identifier) ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "int iVar23;" primitive_type identifier ;) (declaration "char cVar24;" primitive_type identifier ;) (declaration "size_t sVar25;" primitive_type identifier ;) (declaration "fragS *pfVar26;" type_identifier (pointer_declarator "*pfVar26" * identifier) ;) (declaration "offsetT offset;" type_identifier identifier ;) (declaration "uint uVar27;" type_identifier identifier ;) (declaration "uint uVar28;" type_identifier identifier ;) (declaration "ulong uVar29;" type_identifier identifier ;) (declaration "bool bVar30;" primitive_type identifier ;) (declaration "uint local_58;" type_identifier identifier ;) (expression_statement "dwarf2_emit_insn(0);" (call_expression "dwarf2_emit_insn(0)" identifier (argument_list "(0)" ( number_literal ))) ;) (expression_statement "pfVar3 = frag_now;" (assignment_expression "pfVar3 = frag_now" identifier = identifier) ;) (expression_statement "aVar7 = frag_now_fix();" (assignment_expression "aVar7 = frag_now_fix()" identifier = (call_expression "frag_now_fix()" identifier (argument_list "()" ( )))) ;) (expression_statement "other = i.reloc[0];" (assignment_expression "other = i.reloc[0]" identifier = (subscript_expression "i.reloc[0]" (field_expression "i.reloc" identifier . field_identifier) [ number_literal ])) ;) (if_statement "if ((i.tm.opcode_modifier._0_1_ & 0x20) != 0) {\n    uVar19 = (uint)(i.disp_encoding == Cpu386) * 2;\n    if (i.prefix[3] != '\0') {\n      uVar28 = 2;\n      i.prefixes = i.prefixes - 1;\n      bVar30 = flag_code != CODE_16BIT;\n    }\n    else {\n      bVar30 = flag_code == CODE_16BIT;\n      uVar28 = 1;\n    }\n    uVar27 = uVar28;\n    uVar22 = (uint)(i.prefix[3] != '\0');\n    if ((i.prefix[1] & 0xef) == 0x2e) {\n      i.prefixes = i.prefixes - 1;\n      uVar27 = uVar28 + 1;\n      uVar22 = uVar28;\n    }\n    uVar28 = uVar27;\n    if (i.prefix[6] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      uVar28 = uVar27 + 1;\n      uVar22 = uVar27;\n    }\n    if (i.prefix[4] != '\0') {\n      frag_append_1_char((uint)i.prefix[4]);\n      i.prefixes = i.prefixes - 1;\n    }\n    if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }\n    frag_grow((long)(int)(uVar22 + 6));\n    puVar21 = (uchar *)frag_more((long)(int)uVar28);\n    if (i.prefix[3] != '\0') {\n      *puVar21 = 'f';\n      puVar21 = puVar21 + 1;\n    }\n    if ((i.prefix[1] & 0xef) == 0x2e) {\n      *puVar21 = i.prefix[1];\n      puVar21 = puVar21 + 1;\n    }\n    if (i.prefix[6] != '\0') {\n      *puVar21 = i.prefix[6];\n      puVar21 = puVar21 + 1;\n    }\n    uVar4 = (uchar)i.tm.base_opcode;\n    *puVar21 = uVar4;\n    uVar28 = uVar19;\n    if (uVar4 != 0xeb) {\n      uVar28 = uVar19 | 8;\n      if ((cpu_arch_flags.array[0]._0_1_ & 4) != 0) {\n        uVar28 = uVar19 | 4;\n      }\n    }\n    if ((byte)((i.op[0].disps)->field_0x18 - 2) < 2) {\n      symbol = (i.op[0].disps)->X_add_symbol;\n      offset = (i.op[0].disps)->X_add_number;\n    }\n    else {\n      symbol = make_expr_symbol(i.op[0].disps);\n      offset = 0;\n    }\n    frag_var(rs_machine_dependent,5,(ulong)i.reloc[0],uVar28 | bVar30,symbol,offset,(char *)puVar21)\n    ;\n    return;\n  }" if (parenthesized_expression "((i.tm.opcode_modifier._0_1_ & 0x20) != 0)" ( (binary_expression "(i.tm.opcode_modifier._0_1_ & 0x20) != 0" (parenthesized_expression "(i.tm.opcode_modifier._0_1_ & 0x20)" ( (binary_expression "i.tm.opcode_modifier._0_1_ & 0x20" (field_expression "i.tm.opcode_modifier._0_1_" (field_expression "i.tm.opcode_modifier" (field_expression "i.tm" identifier . field_identifier) . field_identifier) . field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n    uVar19 = (uint)(i.disp_encoding == Cpu386) * 2;\n    if (i.prefix[3] != '\0') {\n      uVar28 = 2;\n      i.prefixes = i.prefixes - 1;\n      bVar30 = flag_code != CODE_16BIT;\n    }\n    else {\n      bVar30 = flag_code == CODE_16BIT;\n      uVar28 = 1;\n    }\n    uVar27 = uVar28;\n    uVar22 = (uint)(i.prefix[3] != '\0');\n    if ((i.prefix[1] & 0xef) == 0x2e) {\n      i.prefixes = i.prefixes - 1;\n      uVar27 = uVar28 + 1;\n      uVar22 = uVar28;\n    }\n    uVar28 = uVar27;\n    if (i.prefix[6] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      uVar28 = uVar27 + 1;\n      uVar22 = uVar27;\n    }\n    if (i.prefix[4] != '\0') {\n      frag_append_1_char((uint)i.prefix[4]);\n      i.prefixes = i.prefixes - 1;\n    }\n    if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }\n    frag_grow((long)(int)(uVar22 + 6));\n    puVar21 = (uchar *)frag_more((long)(int)uVar28);\n    if (i.prefix[3] != '\0') {\n      *puVar21 = 'f';\n      puVar21 = puVar21 + 1;\n    }\n    if ((i.prefix[1] & 0xef) == 0x2e) {\n      *puVar21 = i.prefix[1];\n      puVar21 = puVar21 + 1;\n    }\n    if (i.prefix[6] != '\0') {\n      *puVar21 = i.prefix[6];\n      puVar21 = puVar21 + 1;\n    }\n    uVar4 = (uchar)i.tm.base_opcode;\n    *puVar21 = uVar4;\n    uVar28 = uVar19;\n    if (uVar4 != 0xeb) {\n      uVar28 = uVar19 | 8;\n      if ((cpu_arch_flags.array[0]._0_1_ & 4) != 0) {\n        uVar28 = uVar19 | 4;\n      }\n    }\n    if ((byte)((i.op[0].disps)->field_0x18 - 2) < 2) {\n      symbol = (i.op[0].disps)->X_add_symbol;\n      offset = (i.op[0].disps)->X_add_number;\n    }\n    else {\n      symbol = make_expr_symbol(i.op[0].disps);\n      offset = 0;\n    }\n    frag_var(rs_machine_dependent,5,(ulong)i.reloc[0],uVar28 | bVar30,symbol,offset,(char *)puVar21)\n    ;\n    return;\n  }" { (expression_statement "uVar19 = (uint)(i.disp_encoding == Cpu386) * 2;" (assignment_expression "uVar19 = (uint)(i.disp_encoding == Cpu386) * 2" identifier = (binary_expression "(uint)(i.disp_encoding == Cpu386) * 2" (call_expression "(uint)(i.disp_encoding == Cpu386)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(i.disp_encoding == Cpu386)" ( (binary_expression "i.disp_encoding == Cpu386" (field_expression "i.disp_encoding" identifier . field_identifier) == identifier) ))) * number_literal)) ;) (if_statement "if (i.prefix[3] != '\0') {\n      uVar28 = 2;\n      i.prefixes = i.prefixes - 1;\n      bVar30 = flag_code != CODE_16BIT;\n    }\n    else {\n      bVar30 = flag_code == CODE_16BIT;\n      uVar28 = 1;\n    }" if (parenthesized_expression "(i.prefix[3] != '\0')" ( (binary_expression "i.prefix[3] != '\0'" (subscript_expression "i.prefix[3]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      uVar28 = 2;\n      i.prefixes = i.prefixes - 1;\n      bVar30 = flag_code != CODE_16BIT;\n    }" { (expression_statement "uVar28 = 2;" (assignment_expression "uVar28 = 2" identifier = number_literal) ;) (expression_statement "i.prefixes = i.prefixes - 1;" (assignment_expression "i.prefixes = i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) = (binary_expression "i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) - number_literal)) ;) (expression_statement "bVar30 = flag_code != CODE_16BIT;" (assignment_expression "bVar30 = flag_code != CODE_16BIT" identifier = (binary_expression "flag_code != CODE_16BIT" identifier != identifier)) ;) }) (else_clause "else {\n      bVar30 = flag_code == CODE_16BIT;\n      uVar28 = 1;\n    }" else (compound_statement "{\n      bVar30 = flag_code == CODE_16BIT;\n      uVar28 = 1;\n    }" { (expression_statement "bVar30 = flag_code == CODE_16BIT;" (assignment_expression "bVar30 = flag_code == CODE_16BIT" identifier = (binary_expression "flag_code == CODE_16BIT" identifier == identifier)) ;) (expression_statement "uVar28 = 1;" (assignment_expression "uVar28 = 1" identifier = number_literal) ;) }))) (expression_statement "uVar27 = uVar28;" (assignment_expression "uVar27 = uVar28" identifier = identifier) ;) (expression_statement "uVar22 = (uint)(i.prefix[3] != '\0');" (assignment_expression "uVar22 = (uint)(i.prefix[3] != '\0')" identifier = (call_expression "(uint)(i.prefix[3] != '\0')" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(i.prefix[3] != '\0')" ( (binary_expression "i.prefix[3] != '\0'" (subscript_expression "i.prefix[3]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )))) ;) (if_statement "if ((i.prefix[1] & 0xef) == 0x2e) {\n      i.prefixes = i.prefixes - 1;\n      uVar27 = uVar28 + 1;\n      uVar22 = uVar28;\n    }" if (parenthesized_expression "((i.prefix[1] & 0xef) == 0x2e)" ( (binary_expression "(i.prefix[1] & 0xef) == 0x2e" (parenthesized_expression "(i.prefix[1] & 0xef)" ( (binary_expression "i.prefix[1] & 0xef" (subscript_expression "i.prefix[1]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) & number_literal) )) == number_literal) )) (compound_statement "{\n      i.prefixes = i.prefixes - 1;\n      uVar27 = uVar28 + 1;\n      uVar22 = uVar28;\n    }" { (expression_statement "i.prefixes = i.prefixes - 1;" (assignment_expression "i.prefixes = i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) = (binary_expression "i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) - number_literal)) ;) (expression_statement "uVar27 = uVar28 + 1;" (assignment_expression "uVar27 = uVar28 + 1" identifier = (binary_expression "uVar28 + 1" identifier + number_literal)) ;) (expression_statement "uVar22 = uVar28;" (assignment_expression "uVar22 = uVar28" identifier = identifier) ;) })) (expression_statement "uVar28 = uVar27;" (assignment_expression "uVar28 = uVar27" identifier = identifier) ;) (if_statement "if (i.prefix[6] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      uVar28 = uVar27 + 1;\n      uVar22 = uVar27;\n    }" if (parenthesized_expression "(i.prefix[6] != '\0')" ( (binary_expression "i.prefix[6] != '\0'" (subscript_expression "i.prefix[6]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      i.prefixes = i.prefixes - 1;\n      uVar28 = uVar27 + 1;\n      uVar22 = uVar27;\n    }" { (expression_statement "i.prefixes = i.prefixes - 1;" (assignment_expression "i.prefixes = i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) = (binary_expression "i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) - number_literal)) ;) (expression_statement "uVar28 = uVar27 + 1;" (assignment_expression "uVar28 = uVar27 + 1" identifier = (binary_expression "uVar27 + 1" identifier + number_literal)) ;) (expression_statement "uVar22 = uVar27;" (assignment_expression "uVar22 = uVar27" identifier = identifier) ;) })) (if_statement "if (i.prefix[4] != '\0') {\n      frag_append_1_char((uint)i.prefix[4]);\n      i.prefixes = i.prefixes - 1;\n    }" if (parenthesized_expression "(i.prefix[4] != '\0')" ( (binary_expression "i.prefix[4] != '\0'" (subscript_expression "i.prefix[4]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      frag_append_1_char((uint)i.prefix[4]);\n      i.prefixes = i.prefixes - 1;\n    }" { (expression_statement "frag_append_1_char((uint)i.prefix[4]);" (call_expression "frag_append_1_char((uint)i.prefix[4])" identifier (argument_list "((uint)i.prefix[4])" ( (cast_expression "(uint)i.prefix[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "i.prefix[4]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ])) ))) ;) (expression_statement "i.prefixes = i.prefixes - 1;" (assignment_expression "i.prefixes = i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) = (binary_expression "i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) - number_literal)) ;) })) (if_statement "if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }" if (parenthesized_expression "((i.prefixes != 0) && (intel_syntax == 0))" ( (binary_expression "(i.prefixes != 0) && (intel_syntax == 0)" (parenthesized_expression "(i.prefixes != 0)" ( (binary_expression "i.prefixes != 0" (field_expression "i.prefixes" identifier . field_identifier) != number_literal) )) && (parenthesized_expression "(intel_syntax == 0)" ( (binary_expression "intel_syntax == 0" identifier == number_literal) ))) )) (compound_statement "{\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }" { (expression_statement "pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5)" identifier = (cast_expression "(char *)dcgettext(0,"skipping prefixes on this instruction",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"skipping prefixes on this instruction",5)" identifier (argument_list "(0,"skipping prefixes on this instruction",5)" ( number_literal , (string_literal ""skipping prefixes on this instruction"" " string_content ") , number_literal ))))) ;) (expression_statement "as_warn(pcVar9);" (call_expression "as_warn(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) })) (expression_statement "frag_grow((long)(int)(uVar22 + 6));" (call_expression "frag_grow((long)(int)(uVar22 + 6))" identifier (argument_list "((long)(int)(uVar22 + 6))" ( (cast_expression "(long)(int)(uVar22 + 6)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)(uVar22 + 6)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(uVar22 + 6)" ( (binary_expression "uVar22 + 6" identifier + number_literal) )))) ))) ;) (expression_statement "puVar21 = (uchar *)frag_more((long)(int)uVar28);" (assignment_expression "puVar21 = (uchar *)frag_more((long)(int)uVar28)" identifier = (cast_expression "(uchar *)frag_more((long)(int)uVar28)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "frag_more((long)(int)uVar28)" identifier (argument_list "((long)(int)uVar28)" ( (cast_expression "(long)(int)uVar28" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)uVar28" ( (type_descriptor "int" primitive_type) ) identifier)) ))))) ;) (if_statement "if (i.prefix[3] != '\0') {\n      *puVar21 = 'f';\n      puVar21 = puVar21 + 1;\n    }" if (parenthesized_expression "(i.prefix[3] != '\0')" ( (binary_expression "i.prefix[3] != '\0'" (subscript_expression "i.prefix[3]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      *puVar21 = 'f';\n      puVar21 = puVar21 + 1;\n    }" { (expression_statement "*puVar21 = 'f';" (assignment_expression "*puVar21 = 'f'" (pointer_expression "*puVar21" * identifier) = (char_literal "'f'" ' character ')) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) })) (if_statement "if ((i.prefix[1] & 0xef) == 0x2e) {\n      *puVar21 = i.prefix[1];\n      puVar21 = puVar21 + 1;\n    }" if (parenthesized_expression "((i.prefix[1] & 0xef) == 0x2e)" ( (binary_expression "(i.prefix[1] & 0xef) == 0x2e" (parenthesized_expression "(i.prefix[1] & 0xef)" ( (binary_expression "i.prefix[1] & 0xef" (subscript_expression "i.prefix[1]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) & number_literal) )) == number_literal) )) (compound_statement "{\n      *puVar21 = i.prefix[1];\n      puVar21 = puVar21 + 1;\n    }" { (expression_statement "*puVar21 = i.prefix[1];" (assignment_expression "*puVar21 = i.prefix[1]" (pointer_expression "*puVar21" * identifier) = (subscript_expression "i.prefix[1]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ])) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) })) (if_statement "if (i.prefix[6] != '\0') {\n      *puVar21 = i.prefix[6];\n      puVar21 = puVar21 + 1;\n    }" if (parenthesized_expression "(i.prefix[6] != '\0')" ( (binary_expression "i.prefix[6] != '\0'" (subscript_expression "i.prefix[6]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      *puVar21 = i.prefix[6];\n      puVar21 = puVar21 + 1;\n    }" { (expression_statement "*puVar21 = i.prefix[6];" (assignment_expression "*puVar21 = i.prefix[6]" (pointer_expression "*puVar21" * identifier) = (subscript_expression "i.prefix[6]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ])) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) })) (expression_statement "uVar4 = (uchar)i.tm.base_opcode;" (assignment_expression "uVar4 = (uchar)i.tm.base_opcode" identifier = (cast_expression "(uchar)i.tm.base_opcode" ( (type_descriptor "uchar" type_identifier) ) (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier))) ;) (expression_statement "*puVar21 = uVar4;" (assignment_expression "*puVar21 = uVar4" (pointer_expression "*puVar21" * identifier) = identifier) ;) (expression_statement "uVar28 = uVar19;" (assignment_expression "uVar28 = uVar19" identifier = identifier) ;) (if_statement "if (uVar4 != 0xeb) {\n      uVar28 = uVar19 | 8;\n      if ((cpu_arch_flags.array[0]._0_1_ & 4) != 0) {\n        uVar28 = uVar19 | 4;\n      }\n    }" if (parenthesized_expression "(uVar4 != 0xeb)" ( (binary_expression "uVar4 != 0xeb" identifier != number_literal) )) (compound_statement "{\n      uVar28 = uVar19 | 8;\n      if ((cpu_arch_flags.array[0]._0_1_ & 4) != 0) {\n        uVar28 = uVar19 | 4;\n      }\n    }" { (expression_statement "uVar28 = uVar19 | 8;" (assignment_expression "uVar28 = uVar19 | 8" identifier = (binary_expression "uVar19 | 8" identifier | number_literal)) ;) (if_statement "if ((cpu_arch_flags.array[0]._0_1_ & 4) != 0) {\n        uVar28 = uVar19 | 4;\n      }" if (parenthesized_expression "((cpu_arch_flags.array[0]._0_1_ & 4) != 0)" ( (binary_expression "(cpu_arch_flags.array[0]._0_1_ & 4) != 0" (parenthesized_expression "(cpu_arch_flags.array[0]._0_1_ & 4)" ( (binary_expression "cpu_arch_flags.array[0]._0_1_ & 4" (field_expression "cpu_arch_flags.array[0]._0_1_" (subscript_expression "cpu_arch_flags.array[0]" (field_expression "cpu_arch_flags.array" identifier . field_identifier) [ number_literal ]) . field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n        uVar28 = uVar19 | 4;\n      }" { (expression_statement "uVar28 = uVar19 | 4;" (assignment_expression "uVar28 = uVar19 | 4" identifier = (binary_expression "uVar19 | 4" identifier | number_literal)) ;) })) })) (if_statement "if ((byte)((i.op[0].disps)->field_0x18 - 2) < 2) {\n      symbol = (i.op[0].disps)->X_add_symbol;\n      offset = (i.op[0].disps)->X_add_number;\n    }\n    else {\n      symbol = make_expr_symbol(i.op[0].disps);\n      offset = 0;\n    }" if (parenthesized_expression "((byte)((i.op[0].disps)->field_0x18 - 2) < 2)" ( (binary_expression "(byte)((i.op[0].disps)->field_0x18 - 2) < 2" (call_expression "(byte)((i.op[0].disps)->field_0x18 - 2)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "((i.op[0].disps)->field_0x18 - 2)" ( (binary_expression "(i.op[0].disps)->field_0x18 - 2" (field_expression "(i.op[0].disps)->field_0x18" (parenthesized_expression "(i.op[0].disps)" ( (field_expression "i.op[0].disps" (subscript_expression "i.op[0]" (field_expression "i.op" identifier . field_identifier) [ number_literal ]) . field_identifier) )) -> field_identifier) - number_literal) ))) < number_literal) )) (compound_statement "{\n      symbol = (i.op[0].disps)->X_add_symbol;\n      offset = (i.op[0].disps)->X_add_number;\n    }" { (expression_statement "symbol = (i.op[0].disps)->X_add_symbol;" (assignment_expression "symbol = (i.op[0].disps)->X_add_symbol" identifier = (field_expression "(i.op[0].disps)->X_add_symbol" (parenthesized_expression "(i.op[0].disps)" ( (field_expression "i.op[0].disps" (subscript_expression "i.op[0]" (field_expression "i.op" identifier . field_identifier) [ number_literal ]) . field_identifier) )) -> field_identifier)) ;) (expression_statement "offset = (i.op[0].disps)->X_add_number;" (assignment_expression "offset = (i.op[0].disps)->X_add_number" identifier = (field_expression "(i.op[0].disps)->X_add_number" (parenthesized_expression "(i.op[0].disps)" ( (field_expression "i.op[0].disps" (subscript_expression "i.op[0]" (field_expression "i.op" identifier . field_identifier) [ number_literal ]) . field_identifier) )) -> field_identifier)) ;) }) (else_clause "else {\n      symbol = make_expr_symbol(i.op[0].disps);\n      offset = 0;\n    }" else (compound_statement "{\n      symbol = make_expr_symbol(i.op[0].disps);\n      offset = 0;\n    }" { (expression_statement "symbol = make_expr_symbol(i.op[0].disps);" (assignment_expression "symbol = make_expr_symbol(i.op[0].disps)" identifier = (call_expression "make_expr_symbol(i.op[0].disps)" identifier (argument_list "(i.op[0].disps)" ( (field_expression "i.op[0].disps" (subscript_expression "i.op[0]" (field_expression "i.op" identifier . field_identifier) [ number_literal ]) . field_identifier) )))) ;) (expression_statement "offset = 0;" (assignment_expression "offset = 0" identifier = number_literal) ;) }))) (expression_statement "frag_var(rs_machine_dependent,5,(ulong)i.reloc[0],uVar28 | bVar30,symbol,offset,(char *)puVar21)\n    ;" (call_expression "frag_var(rs_machine_dependent,5,(ulong)i.reloc[0],uVar28 | bVar30,symbol,offset,(char *)puVar21)" identifier (argument_list "(rs_machine_dependent,5,(ulong)i.reloc[0],uVar28 | bVar30,symbol,offset,(char *)puVar21)" ( identifier , number_literal , (cast_expression "(ulong)i.reloc[0]" ( (type_descriptor "ulong" type_identifier) ) (subscript_expression "i.reloc[0]" (field_expression "i.reloc" identifier . field_identifier) [ number_literal ])) , (binary_expression "uVar28 | bVar30" identifier | identifier) , identifier , identifier , (cast_expression "(char *)puVar21" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (return_statement "return;" return ;) })) (if_statement "if ((i.tm.opcode_modifier._0_1_ & 0xc0) != 0) {\n    if ((char)i.tm.opcode_modifier._0_1_ < '\0') {\n      if (i.prefix[2] != '\0') {\n        frag_append_1_char(0x67);\n        i.prefixes = i.prefixes - 1;\n      }\n      uVar19 = 1;\n      if ((i.prefix[1] & 0xef) == 0x2e) {\n        frag_append_1_char((uint)i.prefix[1]);\n        i.prefixes = i.prefixes - 1;\n      }\n    }\n    else {\n      if (flag_code == CODE_16BIT) {\n        if (i.prefix[3] == '\0') {\n          uVar19 = 2;\n          goto LAB_00137acf;\n        }\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n      }\n      else if (i.prefix[3] != '\0') {\n        uVar19 = 2;\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n        goto LAB_00137acf;\n      }\n      uVar19 = 4;\n    }\nLAB_00137acf:\n    if (i.prefix[6] != '\0') {\n      frag_append_1_char((uint)i.prefix[6]);\n      i.prefixes = i.prefixes - 1;\n    }\n    if (i.prefix[4] != '\0') {\n      frag_append_1_char((uint)i.prefix[4]);\n      i.prefixes = i.prefixes - 1;\n    }\n    if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }\n    pcVar8 = frag_more((long)(int)(i.tm.opcode_length + uVar19));\n    pcVar9 = pcVar8;\n    if (i.tm.opcode_length != '\x01') {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      pcVar9 = pcVar8 + 1;\n      *pcVar8 = (char)(i.tm.base_opcode >> 8);\n    }\n    iVar23 = (int)pcVar9 + 1;\n    *pcVar9 = (char)i.tm.base_opcode;\n    if ((uVar19 == 4) && (other == BFD_RELOC_NONE)) {\n      bVar5 = need_plt32_p((i.op[0].disps)->X_add_symbol);\n      bVar6 = reloc(4,1,1,(-(uint)(bVar5 == 0) & 0xfffffec9) + BFD_RELOC_X86_64_PLT32);\n      fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),4,i.op[0].disps,1,bVar6);\n      return;\n    }\n    bVar6 = reloc(uVar19,1,1,other);\n    pfVar10 = fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),uVar19,i.op[0].disps,1,bVar6);\n    if (uVar19 != 1) {\n      return;\n    }\n    *(byte *)pfVar10 = *(byte *)pfVar10 | 0x80;\n    return;\n  }" if (parenthesized_expression "((i.tm.opcode_modifier._0_1_ & 0xc0) != 0)" ( (binary_expression "(i.tm.opcode_modifier._0_1_ & 0xc0) != 0" (parenthesized_expression "(i.tm.opcode_modifier._0_1_ & 0xc0)" ( (binary_expression "i.tm.opcode_modifier._0_1_ & 0xc0" (field_expression "i.tm.opcode_modifier._0_1_" (field_expression "i.tm.opcode_modifier" (field_expression "i.tm" identifier . field_identifier) . field_identifier) . field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n    if ((char)i.tm.opcode_modifier._0_1_ < '\0') {\n      if (i.prefix[2] != '\0') {\n        frag_append_1_char(0x67);\n        i.prefixes = i.prefixes - 1;\n      }\n      uVar19 = 1;\n      if ((i.prefix[1] & 0xef) == 0x2e) {\n        frag_append_1_char((uint)i.prefix[1]);\n        i.prefixes = i.prefixes - 1;\n      }\n    }\n    else {\n      if (flag_code == CODE_16BIT) {\n        if (i.prefix[3] == '\0') {\n          uVar19 = 2;\n          goto LAB_00137acf;\n        }\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n      }\n      else if (i.prefix[3] != '\0') {\n        uVar19 = 2;\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n        goto LAB_00137acf;\n      }\n      uVar19 = 4;\n    }\nLAB_00137acf:\n    if (i.prefix[6] != '\0') {\n      frag_append_1_char((uint)i.prefix[6]);\n      i.prefixes = i.prefixes - 1;\n    }\n    if (i.prefix[4] != '\0') {\n      frag_append_1_char((uint)i.prefix[4]);\n      i.prefixes = i.prefixes - 1;\n    }\n    if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }\n    pcVar8 = frag_more((long)(int)(i.tm.opcode_length + uVar19));\n    pcVar9 = pcVar8;\n    if (i.tm.opcode_length != '\x01') {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      pcVar9 = pcVar8 + 1;\n      *pcVar8 = (char)(i.tm.base_opcode >> 8);\n    }\n    iVar23 = (int)pcVar9 + 1;\n    *pcVar9 = (char)i.tm.base_opcode;\n    if ((uVar19 == 4) && (other == BFD_RELOC_NONE)) {\n      bVar5 = need_plt32_p((i.op[0].disps)->X_add_symbol);\n      bVar6 = reloc(4,1,1,(-(uint)(bVar5 == 0) & 0xfffffec9) + BFD_RELOC_X86_64_PLT32);\n      fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),4,i.op[0].disps,1,bVar6);\n      return;\n    }\n    bVar6 = reloc(uVar19,1,1,other);\n    pfVar10 = fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),uVar19,i.op[0].disps,1,bVar6);\n    if (uVar19 != 1) {\n      return;\n    }\n    *(byte *)pfVar10 = *(byte *)pfVar10 | 0x80;\n    return;\n  }" { (if_statement "if ((char)i.tm.opcode_modifier._0_1_ < '\0') {\n      if (i.prefix[2] != '\0') {\n        frag_append_1_char(0x67);\n        i.prefixes = i.prefixes - 1;\n      }\n      uVar19 = 1;\n      if ((i.prefix[1] & 0xef) == 0x2e) {\n        frag_append_1_char((uint)i.prefix[1]);\n        i.prefixes = i.prefixes - 1;\n      }\n    }\n    else {\n      if (flag_code == CODE_16BIT) {\n        if (i.prefix[3] == '\0') {\n          uVar19 = 2;\n          goto LAB_00137acf;\n        }\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n      }\n      else if (i.prefix[3] != '\0') {\n        uVar19 = 2;\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n        goto LAB_00137acf;\n      }\n      uVar19 = 4;\n    }" if (parenthesized_expression "((char)i.tm.opcode_modifier._0_1_ < '\0')" ( (binary_expression "(char)i.tm.opcode_modifier._0_1_ < '\0'" (cast_expression "(char)i.tm.opcode_modifier._0_1_" ( (type_descriptor "char" primitive_type) ) (field_expression "i.tm.opcode_modifier._0_1_" (field_expression "i.tm.opcode_modifier" (field_expression "i.tm" identifier . field_identifier) . field_identifier) . field_identifier)) < (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      if (i.prefix[2] != '\0') {\n        frag_append_1_char(0x67);\n        i.prefixes = i.prefixes - 1;\n      }\n      uVar19 = 1;\n      if ((i.prefix[1] & 0xef) == 0x2e) {\n        frag_append_1_char((uint)i.prefix[1]);\n        i.prefixes = i.prefixes - 1;\n      }\n    }" { (if_statement "if (i.prefix[2] != '\0') {\n        frag_append_1_char(0x67);\n        i.prefixes = i.prefixes - 1;\n      }" if (parenthesized_expression "(i.prefix[2] != '\0')" ( (binary_expression "i.prefix[2] != '\0'" (subscript_expression "i.prefix[2]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        frag_append_1_char(0x67);\n        i.prefixes = i.prefixes - 1;\n      }" { (expression_statement "frag_append_1_char(0x67);" (call_expression "frag_append_1_char(0x67)" identifier (argument_list "(0x67)" ( number_literal ))) ;) (expression_statement "i.prefixes = i.prefixes - 1;" (assignment_expression "i.prefixes = i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) = (binary_expression "i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) - number_literal)) ;) })) (expression_statement "uVar19 = 1;" (assignment_expression "uVar19 = 1" identifier = number_literal) ;) (if_statement "if ((i.prefix[1] & 0xef) == 0x2e) {\n        frag_append_1_char((uint)i.prefix[1]);\n        i.prefixes = i.prefixes - 1;\n      }" if (parenthesized_expression "((i.prefix[1] & 0xef) == 0x2e)" ( (binary_expression "(i.prefix[1] & 0xef) == 0x2e" (parenthesized_expression "(i.prefix[1] & 0xef)" ( (binary_expression "i.prefix[1] & 0xef" (subscript_expression "i.prefix[1]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) & number_literal) )) == number_literal) )) (compound_statement "{\n        frag_append_1_char((uint)i.prefix[1]);\n        i.prefixes = i.prefixes - 1;\n      }" { (expression_statement "frag_append_1_char((uint)i.prefix[1]);" (call_expression "frag_append_1_char((uint)i.prefix[1])" identifier (argument_list "((uint)i.prefix[1])" ( (cast_expression "(uint)i.prefix[1]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "i.prefix[1]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ])) ))) ;) (expression_statement "i.prefixes = i.prefixes - 1;" (assignment_expression "i.prefixes = i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) = (binary_expression "i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) - number_literal)) ;) })) }) (else_clause "else {\n      if (flag_code == CODE_16BIT) {\n        if (i.prefix[3] == '\0') {\n          uVar19 = 2;\n          goto LAB_00137acf;\n        }\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n      }\n      else if (i.prefix[3] != '\0') {\n        uVar19 = 2;\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n        goto LAB_00137acf;\n      }\n      uVar19 = 4;\n    }" else (compound_statement "{\n      if (flag_code == CODE_16BIT) {\n        if (i.prefix[3] == '\0') {\n          uVar19 = 2;\n          goto LAB_00137acf;\n        }\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n      }\n      else if (i.prefix[3] != '\0') {\n        uVar19 = 2;\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n        goto LAB_00137acf;\n      }\n      uVar19 = 4;\n    }" { (if_statement "if (flag_code == CODE_16BIT) {\n        if (i.prefix[3] == '\0') {\n          uVar19 = 2;\n          goto LAB_00137acf;\n        }\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n      }\n      else if (i.prefix[3] != '\0') {\n        uVar19 = 2;\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n        goto LAB_00137acf;\n      }" if (parenthesized_expression "(flag_code == CODE_16BIT)" ( (binary_expression "flag_code == CODE_16BIT" identifier == identifier) )) (compound_statement "{\n        if (i.prefix[3] == '\0') {\n          uVar19 = 2;\n          goto LAB_00137acf;\n        }\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n      }" { (if_statement "if (i.prefix[3] == '\0') {\n          uVar19 = 2;\n          goto LAB_00137acf;\n        }" if (parenthesized_expression "(i.prefix[3] == '\0')" ( (binary_expression "i.prefix[3] == '\0'" (subscript_expression "i.prefix[3]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          uVar19 = 2;\n          goto LAB_00137acf;\n        }" { (expression_statement "uVar19 = 2;" (assignment_expression "uVar19 = 2" identifier = number_literal) ;) (goto_statement "goto LAB_00137acf;" goto statement_identifier ;) })) (expression_statement "frag_append_1_char(0x66);" (call_expression "frag_append_1_char(0x66)" identifier (argument_list "(0x66)" ( number_literal ))) ;) (expression_statement "i.prefixes = i.prefixes - 1;" (assignment_expression "i.prefixes = i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) = (binary_expression "i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) - number_literal)) ;) }) (else_clause "else if (i.prefix[3] != '\0') {\n        uVar19 = 2;\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n        goto LAB_00137acf;\n      }" else (if_statement "if (i.prefix[3] != '\0') {\n        uVar19 = 2;\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n        goto LAB_00137acf;\n      }" if (parenthesized_expression "(i.prefix[3] != '\0')" ( (binary_expression "i.prefix[3] != '\0'" (subscript_expression "i.prefix[3]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        uVar19 = 2;\n        frag_append_1_char(0x66);\n        i.prefixes = i.prefixes - 1;\n        goto LAB_00137acf;\n      }" { (expression_statement "uVar19 = 2;" (assignment_expression "uVar19 = 2" identifier = number_literal) ;) (expression_statement "frag_append_1_char(0x66);" (call_expression "frag_append_1_char(0x66)" identifier (argument_list "(0x66)" ( number_literal ))) ;) (expression_statement "i.prefixes = i.prefixes - 1;" (assignment_expression "i.prefixes = i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) = (binary_expression "i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) - number_literal)) ;) (goto_statement "goto LAB_00137acf;" goto statement_identifier ;) })))) (expression_statement "uVar19 = 4;" (assignment_expression "uVar19 = 4" identifier = number_literal) ;) }))) (labeled_statement "LAB_00137acf:\n    if (i.prefix[6] != '\0') {\n      frag_append_1_char((uint)i.prefix[6]);\n      i.prefixes = i.prefixes - 1;\n    }" statement_identifier : (if_statement "if (i.prefix[6] != '\0') {\n      frag_append_1_char((uint)i.prefix[6]);\n      i.prefixes = i.prefixes - 1;\n    }" if (parenthesized_expression "(i.prefix[6] != '\0')" ( (binary_expression "i.prefix[6] != '\0'" (subscript_expression "i.prefix[6]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      frag_append_1_char((uint)i.prefix[6]);\n      i.prefixes = i.prefixes - 1;\n    }" { (expression_statement "frag_append_1_char((uint)i.prefix[6]);" (call_expression "frag_append_1_char((uint)i.prefix[6])" identifier (argument_list "((uint)i.prefix[6])" ( (cast_expression "(uint)i.prefix[6]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "i.prefix[6]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ])) ))) ;) (expression_statement "i.prefixes = i.prefixes - 1;" (assignment_expression "i.prefixes = i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) = (binary_expression "i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) - number_literal)) ;) }))) (if_statement "if (i.prefix[4] != '\0') {\n      frag_append_1_char((uint)i.prefix[4]);\n      i.prefixes = i.prefixes - 1;\n    }" if (parenthesized_expression "(i.prefix[4] != '\0')" ( (binary_expression "i.prefix[4] != '\0'" (subscript_expression "i.prefix[4]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      frag_append_1_char((uint)i.prefix[4]);\n      i.prefixes = i.prefixes - 1;\n    }" { (expression_statement "frag_append_1_char((uint)i.prefix[4]);" (call_expression "frag_append_1_char((uint)i.prefix[4])" identifier (argument_list "((uint)i.prefix[4])" ( (cast_expression "(uint)i.prefix[4]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "i.prefix[4]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ])) ))) ;) (expression_statement "i.prefixes = i.prefixes - 1;" (assignment_expression "i.prefixes = i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) = (binary_expression "i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) - number_literal)) ;) })) (if_statement "if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }" if (parenthesized_expression "((i.prefixes != 0) && (intel_syntax == 0))" ( (binary_expression "(i.prefixes != 0) && (intel_syntax == 0)" (parenthesized_expression "(i.prefixes != 0)" ( (binary_expression "i.prefixes != 0" (field_expression "i.prefixes" identifier . field_identifier) != number_literal) )) && (parenthesized_expression "(intel_syntax == 0)" ( (binary_expression "intel_syntax == 0" identifier == number_literal) ))) )) (compound_statement "{\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }" { (expression_statement "pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5)" identifier = (cast_expression "(char *)dcgettext(0,"skipping prefixes on this instruction",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"skipping prefixes on this instruction",5)" identifier (argument_list "(0,"skipping prefixes on this instruction",5)" ( number_literal , (string_literal ""skipping prefixes on this instruction"" " string_content ") , number_literal ))))) ;) (expression_statement "as_warn(pcVar9);" (call_expression "as_warn(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) })) (expression_statement "pcVar8 = frag_more((long)(int)(i.tm.opcode_length + uVar19));" (assignment_expression "pcVar8 = frag_more((long)(int)(i.tm.opcode_length + uVar19))" identifier = (call_expression "frag_more((long)(int)(i.tm.opcode_length + uVar19))" identifier (argument_list "((long)(int)(i.tm.opcode_length + uVar19))" ( (cast_expression "(long)(int)(i.tm.opcode_length + uVar19)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)(i.tm.opcode_length + uVar19)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(i.tm.opcode_length + uVar19)" ( (binary_expression "i.tm.opcode_length + uVar19" (field_expression "i.tm.opcode_length" (field_expression "i.tm" identifier . field_identifier) . field_identifier) + identifier) )))) )))) ;) (expression_statement "pcVar9 = pcVar8;" (assignment_expression "pcVar9 = pcVar8" identifier = identifier) ;) (if_statement "if (i.tm.opcode_length != '\x01') {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      pcVar9 = pcVar8 + 1;\n      *pcVar8 = (char)(i.tm.base_opcode >> 8);\n    }" if (parenthesized_expression "(i.tm.opcode_length != '\x01')" ( (binary_expression "i.tm.opcode_length != '\x01'" (field_expression "i.tm.opcode_length" (field_expression "i.tm" identifier . field_identifier) . field_identifier) != (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      pcVar9 = pcVar8 + 1;\n      *pcVar8 = (char)(i.tm.base_opcode >> 8);\n    }" { (if_statement "if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }" if (parenthesized_expression "(i.tm.opcode_length != '\x02')" ( (binary_expression "i.tm.opcode_length != '\x02'" (field_expression "i.tm.opcode_length" (field_expression "i.tm" identifier . field_identifier) . field_identifier) != (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }" { comment (expression_statement "as_abort("../../gas/config/tc-i386.c",0x1d62,"output_jump");" (call_expression "as_abort("../../gas/config/tc-i386.c",0x1d62,"output_jump")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1d62,"output_jump")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_jump"" " string_content ") ))) ;) })) (expression_statement "pcVar9 = pcVar8 + 1;" (assignment_expression "pcVar9 = pcVar8 + 1" identifier = (binary_expression "pcVar8 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar8 = (char)(i.tm.base_opcode >> 8);" (assignment_expression "*pcVar8 = (char)(i.tm.base_opcode >> 8)" (pointer_expression "*pcVar8" * identifier) = (cast_expression "(char)(i.tm.base_opcode >> 8)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(i.tm.base_opcode >> 8)" ( (binary_expression "i.tm.base_opcode >> 8" (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier) >> number_literal) )))) ;) })) (expression_statement "iVar23 = (int)pcVar9 + 1;" (assignment_expression "iVar23 = (int)pcVar9 + 1" identifier = (binary_expression "(int)pcVar9 + 1" (cast_expression "(int)pcVar9" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*pcVar9 = (char)i.tm.base_opcode;" (assignment_expression "*pcVar9 = (char)i.tm.base_opcode" (pointer_expression "*pcVar9" * identifier) = (cast_expression "(char)i.tm.base_opcode" ( (type_descriptor "char" primitive_type) ) (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier))) ;) (if_statement "if ((uVar19 == 4) && (other == BFD_RELOC_NONE)) {\n      bVar5 = need_plt32_p((i.op[0].disps)->X_add_symbol);\n      bVar6 = reloc(4,1,1,(-(uint)(bVar5 == 0) & 0xfffffec9) + BFD_RELOC_X86_64_PLT32);\n      fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),4,i.op[0].disps,1,bVar6);\n      return;\n    }" if (parenthesized_expression "((uVar19 == 4) && (other == BFD_RELOC_NONE))" ( (binary_expression "(uVar19 == 4) && (other == BFD_RELOC_NONE)" (parenthesized_expression "(uVar19 == 4)" ( (binary_expression "uVar19 == 4" identifier == number_literal) )) && (parenthesized_expression "(other == BFD_RELOC_NONE)" ( (binary_expression "other == BFD_RELOC_NONE" identifier == identifier) ))) )) (compound_statement "{\n      bVar5 = need_plt32_p((i.op[0].disps)->X_add_symbol);\n      bVar6 = reloc(4,1,1,(-(uint)(bVar5 == 0) & 0xfffffec9) + BFD_RELOC_X86_64_PLT32);\n      fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),4,i.op[0].disps,1,bVar6);\n      return;\n    }" { (expression_statement "bVar5 = need_plt32_p((i.op[0].disps)->X_add_symbol);" (assignment_expression "bVar5 = need_plt32_p((i.op[0].disps)->X_add_symbol)" identifier = (call_expression "need_plt32_p((i.op[0].disps)->X_add_symbol)" identifier (argument_list "((i.op[0].disps)->X_add_symbol)" ( (field_expression "(i.op[0].disps)->X_add_symbol" (parenthesized_expression "(i.op[0].disps)" ( (field_expression "i.op[0].disps" (subscript_expression "i.op[0]" (field_expression "i.op" identifier . field_identifier) [ number_literal ]) . field_identifier) )) -> field_identifier) )))) ;) (expression_statement "bVar6 = reloc(4,1,1,(-(uint)(bVar5 == 0) & 0xfffffec9) + BFD_RELOC_X86_64_PLT32);" (assignment_expression "bVar6 = reloc(4,1,1,(-(uint)(bVar5 == 0) & 0xfffffec9) + BFD_RELOC_X86_64_PLT32)" identifier = (call_expression "reloc(4,1,1,(-(uint)(bVar5 == 0) & 0xfffffec9) + BFD_RELOC_X86_64_PLT32)" identifier (argument_list "(4,1,1,(-(uint)(bVar5 == 0) & 0xfffffec9) + BFD_RELOC_X86_64_PLT32)" ( number_literal , number_literal , number_literal , (binary_expression "(-(uint)(bVar5 == 0) & 0xfffffec9) + BFD_RELOC_X86_64_PLT32" (parenthesized_expression "(-(uint)(bVar5 == 0) & 0xfffffec9)" ( (binary_expression "-(uint)(bVar5 == 0) & 0xfffffec9" (unary_expression "-(uint)(bVar5 == 0)" - (call_expression "(uint)(bVar5 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar5 == 0)" ( (binary_expression "bVar5 == 0" identifier == number_literal) )))) & number_literal) )) + identifier) )))) ;) (expression_statement "fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),4,i.op[0].disps,1,bVar6);" (call_expression "fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),4,i.op[0].disps,1,bVar6)" identifier (argument_list "(frag_now,iVar23 - ((int)frag_now + 0x80),4,i.op[0].disps,1,bVar6)" ( identifier , (binary_expression "iVar23 - ((int)frag_now + 0x80)" identifier - (parenthesized_expression "((int)frag_now + 0x80)" ( (binary_expression "(int)frag_now + 0x80" (cast_expression "(int)frag_now" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) , number_literal , (field_expression "i.op[0].disps" (subscript_expression "i.op[0]" (field_expression "i.op" identifier . field_identifier) [ number_literal ]) . field_identifier) , number_literal , identifier ))) ;) (return_statement "return;" return ;) })) (expression_statement "bVar6 = reloc(uVar19,1,1,other);" (assignment_expression "bVar6 = reloc(uVar19,1,1,other)" identifier = (call_expression "reloc(uVar19,1,1,other)" identifier (argument_list "(uVar19,1,1,other)" ( identifier , number_literal , number_literal , identifier )))) ;) (expression_statement "pfVar10 = fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),uVar19,i.op[0].disps,1,bVar6);" (assignment_expression "pfVar10 = fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),uVar19,i.op[0].disps,1,bVar6)" identifier = (call_expression "fix_new_exp(frag_now,iVar23 - ((int)frag_now + 0x80),uVar19,i.op[0].disps,1,bVar6)" identifier (argument_list "(frag_now,iVar23 - ((int)frag_now + 0x80),uVar19,i.op[0].disps,1,bVar6)" ( identifier , (binary_expression "iVar23 - ((int)frag_now + 0x80)" identifier - (parenthesized_expression "((int)frag_now + 0x80)" ( (binary_expression "(int)frag_now + 0x80" (cast_expression "(int)frag_now" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) , identifier , (field_expression "i.op[0].disps" (subscript_expression "i.op[0]" (field_expression "i.op" identifier . field_identifier) [ number_literal ]) . field_identifier) , number_literal , identifier )))) ;) (if_statement "if (uVar19 != 1) {\n      return;\n    }" if (parenthesized_expression "(uVar19 != 1)" ( (binary_expression "uVar19 != 1" identifier != number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "*(byte *)pfVar10 = *(byte *)pfVar10 | 0x80;" (assignment_expression "*(byte *)pfVar10 = *(byte *)pfVar10 | 0x80" (pointer_expression "*(byte *)pfVar10" * (cast_expression "(byte *)pfVar10" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "*(byte *)pfVar10 | 0x80" (pointer_expression "*(byte *)pfVar10" * (cast_expression "(byte *)pfVar10" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) | number_literal)) ;) (return_statement "return;" return ;) })) (if_statement "if ((i.tm.opcode_modifier._1_1_ & 1) != 0) {\n    if (i.prefix[3] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      bVar30 = flag_code != CODE_16BIT;\n    }\n    else {\n      bVar30 = flag_code == CODE_16BIT;\n    }\n    uVar19 = (uint)(i.prefix[3] != '\0');\n    if (i.prefix[6] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      uVar19 = uVar19 + 1;\n    }\n    uVar28 = (-(uint)!bVar30 & 2) + 2;\n    if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }\n    puVar21 = (uchar *)frag_more((long)(int)(uVar19 + 3 + uVar28));\n    if (i.prefix[3] != '\0') {\n      *puVar21 = 'f';\n      puVar21 = puVar21 + 1;\n    }\n    puVar13 = puVar21 + 1;\n    if (i.prefix[6] != '\0') {\n      *puVar21 = i.prefix[6];\n      puVar13 = puVar21 + 2;\n      puVar21 = puVar21 + 1;\n    }\n    *puVar21 = (uchar)i.tm.base_opcode;\n    if ((i.op[1].disps)->field_0x18 == '\x02') {\n      uVar29 = (i.op[1].disps)->X_add_number;\n      if (((uVar28 == 2) && (0xffff < uVar29)) && (0xffff < uVar29 + 0x8000)) {\n        pcVar9 = (char *)dcgettext(0,"16-bit jump out of range",5);\n        as_bad(pcVar9);\n        return;\n      }\n      number_to_chars_littleendian((char *)puVar13,uVar29,uVar28);\n    }\n    else {\n      bVar6 = reloc(uVar28,0,0,i.reloc[1]);\n      fix_new_exp(frag_now,(int)puVar13 - ((int)frag_now + 0x80),uVar28,i.op[1].disps,0,bVar6);\n    }\n    pcVar9 = i.tm.name;\n    if ((i.op[0].disps)->field_0x18 != '\x02') {\n      pcVar8 = (char *)dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      as_bad(pcVar8,pcVar9);\n    }\n    vVar12 = (i.op[0].disps)->X_add_number;\n    iVar23 = 2;\n    puVar13 = puVar13 + (int)uVar28;\nLAB_0013817e:\n    number_to_chars_littleendian((char *)puVar13,vVar12,iVar23);\n    return;\n  }" if (parenthesized_expression "((i.tm.opcode_modifier._1_1_ & 1) != 0)" ( (binary_expression "(i.tm.opcode_modifier._1_1_ & 1) != 0" (parenthesized_expression "(i.tm.opcode_modifier._1_1_ & 1)" ( (binary_expression "i.tm.opcode_modifier._1_1_ & 1" (field_expression "i.tm.opcode_modifier._1_1_" (field_expression "i.tm.opcode_modifier" (field_expression "i.tm" identifier . field_identifier) . field_identifier) . field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n    if (i.prefix[3] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      bVar30 = flag_code != CODE_16BIT;\n    }\n    else {\n      bVar30 = flag_code == CODE_16BIT;\n    }\n    uVar19 = (uint)(i.prefix[3] != '\0');\n    if (i.prefix[6] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      uVar19 = uVar19 + 1;\n    }\n    uVar28 = (-(uint)!bVar30 & 2) + 2;\n    if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }\n    puVar21 = (uchar *)frag_more((long)(int)(uVar19 + 3 + uVar28));\n    if (i.prefix[3] != '\0') {\n      *puVar21 = 'f';\n      puVar21 = puVar21 + 1;\n    }\n    puVar13 = puVar21 + 1;\n    if (i.prefix[6] != '\0') {\n      *puVar21 = i.prefix[6];\n      puVar13 = puVar21 + 2;\n      puVar21 = puVar21 + 1;\n    }\n    *puVar21 = (uchar)i.tm.base_opcode;\n    if ((i.op[1].disps)->field_0x18 == '\x02') {\n      uVar29 = (i.op[1].disps)->X_add_number;\n      if (((uVar28 == 2) && (0xffff < uVar29)) && (0xffff < uVar29 + 0x8000)) {\n        pcVar9 = (char *)dcgettext(0,"16-bit jump out of range",5);\n        as_bad(pcVar9);\n        return;\n      }\n      number_to_chars_littleendian((char *)puVar13,uVar29,uVar28);\n    }\n    else {\n      bVar6 = reloc(uVar28,0,0,i.reloc[1]);\n      fix_new_exp(frag_now,(int)puVar13 - ((int)frag_now + 0x80),uVar28,i.op[1].disps,0,bVar6);\n    }\n    pcVar9 = i.tm.name;\n    if ((i.op[0].disps)->field_0x18 != '\x02') {\n      pcVar8 = (char *)dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      as_bad(pcVar8,pcVar9);\n    }\n    vVar12 = (i.op[0].disps)->X_add_number;\n    iVar23 = 2;\n    puVar13 = puVar13 + (int)uVar28;\nLAB_0013817e:\n    number_to_chars_littleendian((char *)puVar13,vVar12,iVar23);\n    return;\n  }" { (if_statement "if (i.prefix[3] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      bVar30 = flag_code != CODE_16BIT;\n    }\n    else {\n      bVar30 = flag_code == CODE_16BIT;\n    }" if (parenthesized_expression "(i.prefix[3] != '\0')" ( (binary_expression "i.prefix[3] != '\0'" (subscript_expression "i.prefix[3]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      i.prefixes = i.prefixes - 1;\n      bVar30 = flag_code != CODE_16BIT;\n    }" { (expression_statement "i.prefixes = i.prefixes - 1;" (assignment_expression "i.prefixes = i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) = (binary_expression "i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) - number_literal)) ;) (expression_statement "bVar30 = flag_code != CODE_16BIT;" (assignment_expression "bVar30 = flag_code != CODE_16BIT" identifier = (binary_expression "flag_code != CODE_16BIT" identifier != identifier)) ;) }) (else_clause "else {\n      bVar30 = flag_code == CODE_16BIT;\n    }" else (compound_statement "{\n      bVar30 = flag_code == CODE_16BIT;\n    }" { (expression_statement "bVar30 = flag_code == CODE_16BIT;" (assignment_expression "bVar30 = flag_code == CODE_16BIT" identifier = (binary_expression "flag_code == CODE_16BIT" identifier == identifier)) ;) }))) (expression_statement "uVar19 = (uint)(i.prefix[3] != '\0');" (assignment_expression "uVar19 = (uint)(i.prefix[3] != '\0')" identifier = (call_expression "(uint)(i.prefix[3] != '\0')" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(i.prefix[3] != '\0')" ( (binary_expression "i.prefix[3] != '\0'" (subscript_expression "i.prefix[3]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )))) ;) (if_statement "if (i.prefix[6] != '\0') {\n      i.prefixes = i.prefixes - 1;\n      uVar19 = uVar19 + 1;\n    }" if (parenthesized_expression "(i.prefix[6] != '\0')" ( (binary_expression "i.prefix[6] != '\0'" (subscript_expression "i.prefix[6]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      i.prefixes = i.prefixes - 1;\n      uVar19 = uVar19 + 1;\n    }" { (expression_statement "i.prefixes = i.prefixes - 1;" (assignment_expression "i.prefixes = i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) = (binary_expression "i.prefixes - 1" (field_expression "i.prefixes" identifier . field_identifier) - number_literal)) ;) (expression_statement "uVar19 = uVar19 + 1;" (assignment_expression "uVar19 = uVar19 + 1" identifier = (binary_expression "uVar19 + 1" identifier + number_literal)) ;) })) (expression_statement "uVar28 = (-(uint)!bVar30 & 2) + 2;" (assignment_expression "uVar28 = (-(uint)!bVar30 & 2) + 2" identifier = (binary_expression "(-(uint)!bVar30 & 2) + 2" (parenthesized_expression "(-(uint)!bVar30 & 2)" ( (binary_expression "-(uint)!bVar30 & 2" (unary_expression "-(uint)!bVar30" - (cast_expression "(uint)!bVar30" ( (type_descriptor "uint" type_identifier) ) (unary_expression "!bVar30" ! identifier))) & number_literal) )) + number_literal)) ;) (if_statement "if ((i.prefixes != 0) && (intel_syntax == 0)) {\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }" if (parenthesized_expression "((i.prefixes != 0) && (intel_syntax == 0))" ( (binary_expression "(i.prefixes != 0) && (intel_syntax == 0)" (parenthesized_expression "(i.prefixes != 0)" ( (binary_expression "i.prefixes != 0" (field_expression "i.prefixes" identifier . field_identifier) != number_literal) )) && (parenthesized_expression "(intel_syntax == 0)" ( (binary_expression "intel_syntax == 0" identifier == number_literal) ))) )) (compound_statement "{\n      pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);\n      as_warn(pcVar9);\n    }" { (expression_statement "pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"skipping prefixes on this instruction",5)" identifier = (cast_expression "(char *)dcgettext(0,"skipping prefixes on this instruction",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"skipping prefixes on this instruction",5)" identifier (argument_list "(0,"skipping prefixes on this instruction",5)" ( number_literal , (string_literal ""skipping prefixes on this instruction"" " string_content ") , number_literal ))))) ;) (expression_statement "as_warn(pcVar9);" (call_expression "as_warn(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) })) (expression_statement "puVar21 = (uchar *)frag_more((long)(int)(uVar19 + 3 + uVar28));" (assignment_expression "puVar21 = (uchar *)frag_more((long)(int)(uVar19 + 3 + uVar28))" identifier = (cast_expression "(uchar *)frag_more((long)(int)(uVar19 + 3 + uVar28))" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "frag_more((long)(int)(uVar19 + 3 + uVar28))" identifier (argument_list "((long)(int)(uVar19 + 3 + uVar28))" ( (cast_expression "(long)(int)(uVar19 + 3 + uVar28)" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)(uVar19 + 3 + uVar28)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "(uVar19 + 3 + uVar28)" ( (binary_expression "uVar19 + 3 + uVar28" (binary_expression "uVar19 + 3" identifier + number_literal) + identifier) )))) ))))) ;) (if_statement "if (i.prefix[3] != '\0') {\n      *puVar21 = 'f';\n      puVar21 = puVar21 + 1;\n    }" if (parenthesized_expression "(i.prefix[3] != '\0')" ( (binary_expression "i.prefix[3] != '\0'" (subscript_expression "i.prefix[3]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      *puVar21 = 'f';\n      puVar21 = puVar21 + 1;\n    }" { (expression_statement "*puVar21 = 'f';" (assignment_expression "*puVar21 = 'f'" (pointer_expression "*puVar21" * identifier) = (char_literal "'f'" ' character ')) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) })) (expression_statement "puVar13 = puVar21 + 1;" (assignment_expression "puVar13 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) (if_statement "if (i.prefix[6] != '\0') {\n      *puVar21 = i.prefix[6];\n      puVar13 = puVar21 + 2;\n      puVar21 = puVar21 + 1;\n    }" if (parenthesized_expression "(i.prefix[6] != '\0')" ( (binary_expression "i.prefix[6] != '\0'" (subscript_expression "i.prefix[6]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      *puVar21 = i.prefix[6];\n      puVar13 = puVar21 + 2;\n      puVar21 = puVar21 + 1;\n    }" { (expression_statement "*puVar21 = i.prefix[6];" (assignment_expression "*puVar21 = i.prefix[6]" (pointer_expression "*puVar21" * identifier) = (subscript_expression "i.prefix[6]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ])) ;) (expression_statement "puVar13 = puVar21 + 2;" (assignment_expression "puVar13 = puVar21 + 2" identifier = (binary_expression "puVar21 + 2" identifier + number_literal)) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) })) (expression_statement "*puVar21 = (uchar)i.tm.base_opcode;" (assignment_expression "*puVar21 = (uchar)i.tm.base_opcode" (pointer_expression "*puVar21" * identifier) = (cast_expression "(uchar)i.tm.base_opcode" ( (type_descriptor "uchar" type_identifier) ) (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier))) ;) (if_statement "if ((i.op[1].disps)->field_0x18 == '\x02') {\n      uVar29 = (i.op[1].disps)->X_add_number;\n      if (((uVar28 == 2) && (0xffff < uVar29)) && (0xffff < uVar29 + 0x8000)) {\n        pcVar9 = (char *)dcgettext(0,"16-bit jump out of range",5);\n        as_bad(pcVar9);\n        return;\n      }\n      number_to_chars_littleendian((char *)puVar13,uVar29,uVar28);\n    }\n    else {\n      bVar6 = reloc(uVar28,0,0,i.reloc[1]);\n      fix_new_exp(frag_now,(int)puVar13 - ((int)frag_now + 0x80),uVar28,i.op[1].disps,0,bVar6);\n    }" if (parenthesized_expression "((i.op[1].disps)->field_0x18 == '\x02')" ( (binary_expression "(i.op[1].disps)->field_0x18 == '\x02'" (field_expression "(i.op[1].disps)->field_0x18" (parenthesized_expression "(i.op[1].disps)" ( (field_expression "i.op[1].disps" (subscript_expression "i.op[1]" (field_expression "i.op" identifier . field_identifier) [ number_literal ]) . field_identifier) )) -> field_identifier) == (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n      uVar29 = (i.op[1].disps)->X_add_number;\n      if (((uVar28 == 2) && (0xffff < uVar29)) && (0xffff < uVar29 + 0x8000)) {\n        pcVar9 = (char *)dcgettext(0,"16-bit jump out of range",5);\n        as_bad(pcVar9);\n        return;\n      }\n      number_to_chars_littleendian((char *)puVar13,uVar29,uVar28);\n    }" { (expression_statement "uVar29 = (i.op[1].disps)->X_add_number;" (assignment_expression "uVar29 = (i.op[1].disps)->X_add_number" identifier = (field_expression "(i.op[1].disps)->X_add_number" (parenthesized_expression "(i.op[1].disps)" ( (field_expression "i.op[1].disps" (subscript_expression "i.op[1]" (field_expression "i.op" identifier . field_identifier) [ number_literal ]) . field_identifier) )) -> field_identifier)) ;) (if_statement "if (((uVar28 == 2) && (0xffff < uVar29)) && (0xffff < uVar29 + 0x8000)) {\n        pcVar9 = (char *)dcgettext(0,"16-bit jump out of range",5);\n        as_bad(pcVar9);\n        return;\n      }" if (parenthesized_expression "(((uVar28 == 2) && (0xffff < uVar29)) && (0xffff < uVar29 + 0x8000))" ( (binary_expression "((uVar28 == 2) && (0xffff < uVar29)) && (0xffff < uVar29 + 0x8000)" (parenthesized_expression "((uVar28 == 2) && (0xffff < uVar29))" ( (binary_expression "(uVar28 == 2) && (0xffff < uVar29)" (parenthesized_expression "(uVar28 == 2)" ( (binary_expression "uVar28 == 2" identifier == number_literal) )) && (parenthesized_expression "(0xffff < uVar29)" ( (binary_expression "0xffff < uVar29" number_literal < identifier) ))) )) && (parenthesized_expression "(0xffff < uVar29 + 0x8000)" ( (binary_expression "0xffff < uVar29 + 0x8000" number_literal < (binary_expression "uVar29 + 0x8000" identifier + number_literal)) ))) )) (compound_statement "{\n        pcVar9 = (char *)dcgettext(0,"16-bit jump out of range",5);\n        as_bad(pcVar9);\n        return;\n      }" { (expression_statement "pcVar9 = (char *)dcgettext(0,"16-bit jump out of range",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"16-bit jump out of range",5)" identifier = (cast_expression "(char *)dcgettext(0,"16-bit jump out of range",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"16-bit jump out of range",5)" identifier (argument_list "(0,"16-bit jump out of range",5)" ( number_literal , (string_literal ""16-bit jump out of range"" " string_content ") , number_literal ))))) ;) (expression_statement "as_bad(pcVar9);" (call_expression "as_bad(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (return_statement "return;" return ;) })) (expression_statement "number_to_chars_littleendian((char *)puVar13,uVar29,uVar28);" (call_expression "number_to_chars_littleendian((char *)puVar13,uVar29,uVar28)" identifier (argument_list "((char *)puVar13,uVar29,uVar28)" ( (cast_expression "(char *)puVar13" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , identifier , identifier ))) ;) }) (else_clause "else {\n      bVar6 = reloc(uVar28,0,0,i.reloc[1]);\n      fix_new_exp(frag_now,(int)puVar13 - ((int)frag_now + 0x80),uVar28,i.op[1].disps,0,bVar6);\n    }" else (compound_statement "{\n      bVar6 = reloc(uVar28,0,0,i.reloc[1]);\n      fix_new_exp(frag_now,(int)puVar13 - ((int)frag_now + 0x80),uVar28,i.op[1].disps,0,bVar6);\n    }" { (expression_statement "bVar6 = reloc(uVar28,0,0,i.reloc[1]);" (assignment_expression "bVar6 = reloc(uVar28,0,0,i.reloc[1])" identifier = (call_expression "reloc(uVar28,0,0,i.reloc[1])" identifier (argument_list "(uVar28,0,0,i.reloc[1])" ( identifier , number_literal , number_literal , (subscript_expression "i.reloc[1]" (field_expression "i.reloc" identifier . field_identifier) [ number_literal ]) )))) ;) (expression_statement "fix_new_exp(frag_now,(int)puVar13 - ((int)frag_now + 0x80),uVar28,i.op[1].disps,0,bVar6);" (call_expression "fix_new_exp(frag_now,(int)puVar13 - ((int)frag_now + 0x80),uVar28,i.op[1].disps,0,bVar6)" identifier (argument_list "(frag_now,(int)puVar13 - ((int)frag_now + 0x80),uVar28,i.op[1].disps,0,bVar6)" ( identifier , (binary_expression "(int)puVar13 - ((int)frag_now + 0x80)" (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier) - (parenthesized_expression "((int)frag_now + 0x80)" ( (binary_expression "(int)frag_now + 0x80" (cast_expression "(int)frag_now" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))) , identifier , (field_expression "i.op[1].disps" (subscript_expression "i.op[1]" (field_expression "i.op" identifier . field_identifier) [ number_literal ]) . field_identifier) , number_literal , identifier ))) ;) }))) (expression_statement "pcVar9 = i.tm.name;" (assignment_expression "pcVar9 = i.tm.name" identifier = (field_expression "i.tm.name" (field_expression "i.tm" identifier . field_identifier) . field_identifier)) ;) (if_statement "if ((i.op[0].disps)->field_0x18 != '\x02') {\n      pcVar8 = (char *)dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      as_bad(pcVar8,pcVar9);\n    }" if (parenthesized_expression "((i.op[0].disps)->field_0x18 != '\x02')" ( (binary_expression "(i.op[0].disps)->field_0x18 != '\x02'" (field_expression "(i.op[0].disps)->field_0x18" (parenthesized_expression "(i.op[0].disps)" ( (field_expression "i.op[0].disps" (subscript_expression "i.op[0]" (field_expression "i.op" identifier . field_identifier) [ number_literal ]) . field_identifier) )) -> field_identifier) != (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n      pcVar8 = (char *)dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      as_bad(pcVar8,pcVar9);\n    }" { (expression_statement "pcVar8 = (char *)dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);" (assignment_expression "pcVar8 = (char *)dcgettext(0,"can\'t handle non absolute segment in `%s\'",5)" identifier = (cast_expression "(char *)dcgettext(0,"can\'t handle non absolute segment in `%s\'",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"can\'t handle non absolute segment in `%s\'",5)" identifier (argument_list "(0,"can\'t handle non absolute segment in `%s\'",5)" ( number_literal , (string_literal ""can\'t handle non absolute segment in `%s\'"" " string_content escape_sequence string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "as_bad(pcVar8,pcVar9);" (call_expression "as_bad(pcVar8,pcVar9)" identifier (argument_list "(pcVar8,pcVar9)" ( identifier , identifier ))) ;) })) (expression_statement "vVar12 = (i.op[0].disps)->X_add_number;" (assignment_expression "vVar12 = (i.op[0].disps)->X_add_number" identifier = (field_expression "(i.op[0].disps)->X_add_number" (parenthesized_expression "(i.op[0].disps)" ( (field_expression "i.op[0].disps" (subscript_expression "i.op[0]" (field_expression "i.op" identifier . field_identifier) [ number_literal ]) . field_identifier) )) -> field_identifier)) ;) (expression_statement "iVar23 = 2;" (assignment_expression "iVar23 = 2" identifier = number_literal) ;) (expression_statement "puVar13 = puVar13 + (int)uVar28;" (assignment_expression "puVar13 = puVar13 + (int)uVar28" identifier = (binary_expression "puVar13 + (int)uVar28" identifier + (cast_expression "(int)uVar28" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (labeled_statement "LAB_0013817e:\n    number_to_chars_littleendian((char *)puVar13,vVar12,iVar23);" statement_identifier : (expression_statement "number_to_chars_littleendian((char *)puVar13,vVar12,iVar23);" (call_expression "number_to_chars_littleendian((char *)puVar13,vVar12,iVar23)" identifier (argument_list "((char *)puVar13,vVar12,iVar23)" ( (cast_expression "(char *)puVar13" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , identifier , identifier ))) ;)) (return_statement "return;" return ;) })) (if_statement "if ((avoid_fence == 0) || (i.tm.base_opcode != 0xfae)) {\n    if (omit_lock_prefix != 0) {\n      if (i.tm.base_opcode == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      i.prefix[5] = '\0';\n    }\n  }\n  else {\n    if (((i.operands == 1) && (i.imm_operands == 1)) &&\n       ((((i.op[0].disps)->X_add_number & 0xffffffffffffffefU) == 0xe8 ||\n        ((i.op[0].disps)->X_add_number == 0xf0)))) {\n      puVar13 = (uchar *)frag_more(5);\n      iVar23 = 5;\n      vVar12 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (omit_lock_prefix != 0) goto LAB_00137bee;\n  }" if (parenthesized_expression "((avoid_fence == 0) || (i.tm.base_opcode != 0xfae))" ( (binary_expression "(avoid_fence == 0) || (i.tm.base_opcode != 0xfae)" (parenthesized_expression "(avoid_fence == 0)" ( (binary_expression "avoid_fence == 0" identifier == number_literal) )) || (parenthesized_expression "(i.tm.base_opcode != 0xfae)" ( (binary_expression "i.tm.base_opcode != 0xfae" (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier) != number_literal) ))) )) (compound_statement "{\n    if (omit_lock_prefix != 0) {\n      if (i.tm.base_opcode == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      i.prefix[5] = '\0';\n    }\n  }" { (if_statement "if (omit_lock_prefix != 0) {\n      if (i.tm.base_opcode == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      i.prefix[5] = '\0';\n    }" if (parenthesized_expression "(omit_lock_prefix != 0)" ( (binary_expression "omit_lock_prefix != 0" identifier != number_literal) )) (compound_statement "{\n      if (i.tm.base_opcode == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      i.prefix[5] = '\0';\n    }" { (if_statement "if (i.tm.base_opcode == 0xf0) {\n        return;\n      }" if (parenthesized_expression "(i.tm.base_opcode == 0xf0)" ( (binary_expression "i.tm.base_opcode == 0xf0" (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier) == number_literal) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) })) (labeled_statement "LAB_00137bee:\n      i.prefix[5] = '\0';" statement_identifier : (expression_statement "i.prefix[5] = '\0';" (assignment_expression "i.prefix[5] = '\0'" (subscript_expression "i.prefix[5]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;)) })) }) (else_clause "else {\n    if (((i.operands == 1) && (i.imm_operands == 1)) &&\n       ((((i.op[0].disps)->X_add_number & 0xffffffffffffffefU) == 0xe8 ||\n        ((i.op[0].disps)->X_add_number == 0xf0)))) {\n      puVar13 = (uchar *)frag_more(5);\n      iVar23 = 5;\n      vVar12 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (omit_lock_prefix != 0) goto LAB_00137bee;\n  }" else (compound_statement "{\n    if (((i.operands == 1) && (i.imm_operands == 1)) &&\n       ((((i.op[0].disps)->X_add_number & 0xffffffffffffffefU) == 0xe8 ||\n        ((i.op[0].disps)->X_add_number == 0xf0)))) {\n      puVar13 = (uchar *)frag_more(5);\n      iVar23 = 5;\n      vVar12 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (omit_lock_prefix != 0) goto LAB_00137bee;\n  }" { (if_statement "if (((i.operands == 1) && (i.imm_operands == 1)) &&\n       ((((i.op[0].disps)->X_add_number & 0xffffffffffffffefU) == 0xe8 ||\n        ((i.op[0].disps)->X_add_number == 0xf0)))) {\n      puVar13 = (uchar *)frag_more(5);\n      iVar23 = 5;\n      vVar12 = 0x240483f0;\n      goto LAB_0013817e;\n    }" if (parenthesized_expression "(((i.operands == 1) && (i.imm_operands == 1)) &&\n       ((((i.op[0].disps)->X_add_number & 0xffffffffffffffefU) == 0xe8 ||\n        ((i.op[0].disps)->X_add_number == 0xf0))))" ( (binary_expression "((i.operands == 1) && (i.imm_operands == 1)) &&\n       ((((i.op[0].disps)->X_add_number & 0xffffffffffffffefU) == 0xe8 ||\n        ((i.op[0].disps)->X_add_number == 0xf0)))" (parenthesized_expression "((i.operands == 1) && (i.imm_operands == 1))" ( (binary_expression "(i.operands == 1) && (i.imm_operands == 1)" (parenthesized_expression "(i.operands == 1)" ( (binary_expression "i.operands == 1" (field_expression "i.operands" identifier . field_identifier) == number_literal) )) && (parenthesized_expression "(i.imm_operands == 1)" ( (binary_expression "i.imm_operands == 1" (field_expression "i.imm_operands" identifier . field_identifier) == number_literal) ))) )) && (parenthesized_expression "((((i.op[0].disps)->X_add_number & 0xffffffffffffffefU) == 0xe8 ||\n        ((i.op[0].disps)->X_add_number == 0xf0)))" ( (parenthesized_expression "(((i.op[0].disps)->X_add_number & 0xffffffffffffffefU) == 0xe8 ||\n        ((i.op[0].disps)->X_add_number == 0xf0))" ( (binary_expression "((i.op[0].disps)->X_add_number & 0xffffffffffffffefU) == 0xe8 ||\n        ((i.op[0].disps)->X_add_number == 0xf0)" (binary_expression "((i.op[0].disps)->X_add_number & 0xffffffffffffffefU) == 0xe8" (parenthesized_expression "((i.op[0].disps)->X_add_number & 0xffffffffffffffefU)" ( (binary_expression "(i.op[0].disps)->X_add_number & 0xffffffffffffffefU" (field_expression "(i.op[0].disps)->X_add_number" (parenthesized_expression "(i.op[0].disps)" ( (field_expression "i.op[0].disps" (subscript_expression "i.op[0]" (field_expression "i.op" identifier . field_identifier) [ number_literal ]) . field_identifier) )) -> field_identifier) & number_literal) )) == number_literal) || (parenthesized_expression "((i.op[0].disps)->X_add_number == 0xf0)" ( (binary_expression "(i.op[0].disps)->X_add_number == 0xf0" (field_expression "(i.op[0].disps)->X_add_number" (parenthesized_expression "(i.op[0].disps)" ( (field_expression "i.op[0].disps" (subscript_expression "i.op[0]" (field_expression "i.op" identifier . field_identifier) [ number_literal ]) . field_identifier) )) -> field_identifier) == number_literal) ))) )) ))) )) (compound_statement "{\n      puVar13 = (uchar *)frag_more(5);\n      iVar23 = 5;\n      vVar12 = 0x240483f0;\n      goto LAB_0013817e;\n    }" { (expression_statement "puVar13 = (uchar *)frag_more(5);" (assignment_expression "puVar13 = (uchar *)frag_more(5)" identifier = (cast_expression "(uchar *)frag_more(5)" ( (type_descriptor "uchar *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "frag_more(5)" identifier (argument_list "(5)" ( number_literal ))))) ;) (expression_statement "iVar23 = 5;" (assignment_expression "iVar23 = 5" identifier = number_literal) ;) (expression_statement "vVar12 = 0x240483f0;" (assignment_expression "vVar12 = 0x240483f0" identifier = number_literal) ;) (goto_statement "goto LAB_0013817e;" goto statement_identifier ;) })) (if_statement "if (omit_lock_prefix != 0) goto LAB_00137bee;" if (parenthesized_expression "(omit_lock_prefix != 0)" ( (binary_expression "omit_lock_prefix != 0" identifier != number_literal) )) (goto_statement "goto LAB_00137bee;" goto statement_identifier ;)) }))) (if_statement "if ((i.tm.opcode_modifier._4_4_ & 0x7000600) != 0) {\n    lVar20 = 0;\n    do {\n      if (i.prefix[lVar20] != 0) {\n        uVar19 = (uint)lVar20;\n        if (uVar19 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar19 < 3) {\n          frag_append_1_char((uint)i.prefix[lVar20]);\n        }\n        else if (uVar19 != 6) goto LAB_00137a7e;\n      }\n      lVar20 = lVar20 + 1;\n    } while (lVar20 != 7);\n    if (i.vrex != 0) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    pcVar9 = frag_more((ulong)i.vex.length);\n    if (i.vex.length != 0) {\n      lVar20 = 0;\n      do {\n        pcVar9[lVar20] = i.vex.bytes[lVar20];\n        lVar20 = lVar20 + 1;\n      } while ((uint)lVar20 < i.vex.length);\n    }\n    goto LAB_00137e10;\n  }" if (parenthesized_expression "((i.tm.opcode_modifier._4_4_ & 0x7000600) != 0)" ( (binary_expression "(i.tm.opcode_modifier._4_4_ & 0x7000600) != 0" (parenthesized_expression "(i.tm.opcode_modifier._4_4_ & 0x7000600)" ( (binary_expression "i.tm.opcode_modifier._4_4_ & 0x7000600" (field_expression "i.tm.opcode_modifier._4_4_" (field_expression "i.tm.opcode_modifier" (field_expression "i.tm" identifier . field_identifier) . field_identifier) . field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n    lVar20 = 0;\n    do {\n      if (i.prefix[lVar20] != 0) {\n        uVar19 = (uint)lVar20;\n        if (uVar19 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar19 < 3) {\n          frag_append_1_char((uint)i.prefix[lVar20]);\n        }\n        else if (uVar19 != 6) goto LAB_00137a7e;\n      }\n      lVar20 = lVar20 + 1;\n    } while (lVar20 != 7);\n    if (i.vrex != 0) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    pcVar9 = frag_more((ulong)i.vex.length);\n    if (i.vex.length != 0) {\n      lVar20 = 0;\n      do {\n        pcVar9[lVar20] = i.vex.bytes[lVar20];\n        lVar20 = lVar20 + 1;\n      } while ((uint)lVar20 < i.vex.length);\n    }\n    goto LAB_00137e10;\n  }" { (expression_statement "lVar20 = 0;" (assignment_expression "lVar20 = 0" identifier = number_literal) ;) (do_statement "do {\n      if (i.prefix[lVar20] != 0) {\n        uVar19 = (uint)lVar20;\n        if (uVar19 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar19 < 3) {\n          frag_append_1_char((uint)i.prefix[lVar20]);\n        }\n        else if (uVar19 != 6) goto LAB_00137a7e;\n      }\n      lVar20 = lVar20 + 1;\n    } while (lVar20 != 7);" do (compound_statement "{\n      if (i.prefix[lVar20] != 0) {\n        uVar19 = (uint)lVar20;\n        if (uVar19 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar19 < 3) {\n          frag_append_1_char((uint)i.prefix[lVar20]);\n        }\n        else if (uVar19 != 6) goto LAB_00137a7e;\n      }\n      lVar20 = lVar20 + 1;\n    }" { (if_statement "if (i.prefix[lVar20] != 0) {\n        uVar19 = (uint)lVar20;\n        if (uVar19 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar19 < 3) {\n          frag_append_1_char((uint)i.prefix[lVar20]);\n        }\n        else if (uVar19 != 6) goto LAB_00137a7e;\n      }" if (parenthesized_expression "(i.prefix[lVar20] != 0)" ( (binary_expression "i.prefix[lVar20] != 0" (subscript_expression "i.prefix[lVar20]" (field_expression "i.prefix" identifier . field_identifier) [ identifier ]) != number_literal) )) (compound_statement "{\n        uVar19 = (uint)lVar20;\n        if (uVar19 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar19 < 3) {\n          frag_append_1_char((uint)i.prefix[lVar20]);\n        }\n        else if (uVar19 != 6) goto LAB_00137a7e;\n      }" { (expression_statement "uVar19 = (uint)lVar20;" (assignment_expression "uVar19 = (uint)lVar20" identifier = (cast_expression "(uint)lVar20" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (uVar19 == 0) {\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }" if (parenthesized_expression "(uVar19 == 0)" ( (binary_expression "uVar19 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }" { (labeled_statement "LAB_00137a7e:\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/config/tc-i386.c",0x1e38,"output_insn");" statement_identifier : comment (expression_statement "as_abort("../../gas/config/tc-i386.c",0x1e38,"output_insn");" (call_expression "as_abort("../../gas/config/tc-i386.c",0x1e38,"output_insn")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1e38,"output_insn")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_insn"" " string_content ") ))) ;)) })) (if_statement "if (uVar19 < 3) {\n          frag_append_1_char((uint)i.prefix[lVar20]);\n        }\n        else if (uVar19 != 6) goto LAB_00137a7e;" if (parenthesized_expression "(uVar19 < 3)" ( (binary_expression "uVar19 < 3" identifier < number_literal) )) (compound_statement "{\n          frag_append_1_char((uint)i.prefix[lVar20]);\n        }" { (expression_statement "frag_append_1_char((uint)i.prefix[lVar20]);" (call_expression "frag_append_1_char((uint)i.prefix[lVar20])" identifier (argument_list "((uint)i.prefix[lVar20])" ( (cast_expression "(uint)i.prefix[lVar20]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "i.prefix[lVar20]" (field_expression "i.prefix" identifier . field_identifier) [ identifier ])) ))) ;) }) (else_clause "else if (uVar19 != 6) goto LAB_00137a7e;" else (if_statement "if (uVar19 != 6) goto LAB_00137a7e;" if (parenthesized_expression "(uVar19 != 6)" ( (binary_expression "uVar19 != 6" identifier != number_literal) )) (goto_statement "goto LAB_00137a7e;" goto statement_identifier ;)))) })) (expression_statement "lVar20 = lVar20 + 1;" (assignment_expression "lVar20 = lVar20 + 1" identifier = (binary_expression "lVar20 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(lVar20 != 7)" ( (binary_expression "lVar20 != 7" identifier != number_literal) )) ;) (if_statement "if (i.vrex != 0) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }" if (parenthesized_expression "(i.vrex != 0)" ( (binary_expression "i.vrex != 0" (field_expression "i.vrex" identifier . field_identifier) != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }" { comment (expression_statement "as_abort("../../gas/config/tc-i386.c",0x1e3f,"output_insn");" (call_expression "as_abort("../../gas/config/tc-i386.c",0x1e3f,"output_insn")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1e3f,"output_insn")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_insn"" " string_content ") ))) ;) })) (expression_statement "pcVar9 = frag_more((ulong)i.vex.length);" (assignment_expression "pcVar9 = frag_more((ulong)i.vex.length)" identifier = (call_expression "frag_more((ulong)i.vex.length)" identifier (argument_list "((ulong)i.vex.length)" ( (cast_expression "(ulong)i.vex.length" ( (type_descriptor "ulong" type_identifier) ) (field_expression "i.vex.length" (field_expression "i.vex" identifier . field_identifier) . field_identifier)) )))) ;) (if_statement "if (i.vex.length != 0) {\n      lVar20 = 0;\n      do {\n        pcVar9[lVar20] = i.vex.bytes[lVar20];\n        lVar20 = lVar20 + 1;\n      } while ((uint)lVar20 < i.vex.length);\n    }" if (parenthesized_expression "(i.vex.length != 0)" ( (binary_expression "i.vex.length != 0" (field_expression "i.vex.length" (field_expression "i.vex" identifier . field_identifier) . field_identifier) != number_literal) )) (compound_statement "{\n      lVar20 = 0;\n      do {\n        pcVar9[lVar20] = i.vex.bytes[lVar20];\n        lVar20 = lVar20 + 1;\n      } while ((uint)lVar20 < i.vex.length);\n    }" { (expression_statement "lVar20 = 0;" (assignment_expression "lVar20 = 0" identifier = number_literal) ;) (do_statement "do {\n        pcVar9[lVar20] = i.vex.bytes[lVar20];\n        lVar20 = lVar20 + 1;\n      } while ((uint)lVar20 < i.vex.length);" do (compound_statement "{\n        pcVar9[lVar20] = i.vex.bytes[lVar20];\n        lVar20 = lVar20 + 1;\n      }" { (expression_statement "pcVar9[lVar20] = i.vex.bytes[lVar20];" (assignment_expression "pcVar9[lVar20] = i.vex.bytes[lVar20]" (subscript_expression "pcVar9[lVar20]" identifier [ identifier ]) = (subscript_expression "i.vex.bytes[lVar20]" (field_expression "i.vex.bytes" (field_expression "i.vex" identifier . field_identifier) . field_identifier) [ identifier ])) ;) (expression_statement "lVar20 = lVar20 + 1;" (assignment_expression "lVar20 = lVar20 + 1" identifier = (binary_expression "lVar20 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "((uint)lVar20 < i.vex.length)" ( (binary_expression "(uint)lVar20 < i.vex.length" (cast_expression "(uint)lVar20" ( (type_descriptor "uint" type_identifier) ) identifier) < (field_expression "i.vex.length" (field_expression "i.vex" identifier . field_identifier) . field_identifier)) )) ;) })) (goto_statement "goto LAB_00137e10;" goto statement_identifier ;) })) (if_statement "if (i.tm.opcode_length != '\x01') {\n    if (i.tm.opcode_length == '\0') {\n      pcVar9 = (char *)dcgettext(0,"pseudo prefix without instruction",5);\n      as_bad_where(pfVar3->fr_file,pfVar3->fr_line,pcVar9);\n      return;\n    }\n    if (i.tm.opcode_length == '\x02') {\n      if ((i.tm.base_opcode & 0xff0000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x10 & 0xff;\n        if ((i.tm.cpu_flags.array[0]._2_1_ & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        add_prefix(uVar19);\n      }\n    }\n    else {\n      if (i.tm.opcode_length != '\x03') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((i.tm.base_opcode & 0xff000000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x18;\nLAB_00137dbf:\n        if ((uVar19 != 0xf3) || (i.prefix[4] != 0xf3)) goto LAB_00137dd0;\n      }\n    }\n  }" if (parenthesized_expression "(i.tm.opcode_length != '\x01')" ( (binary_expression "i.tm.opcode_length != '\x01'" (field_expression "i.tm.opcode_length" (field_expression "i.tm" identifier . field_identifier) . field_identifier) != (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n    if (i.tm.opcode_length == '\0') {\n      pcVar9 = (char *)dcgettext(0,"pseudo prefix without instruction",5);\n      as_bad_where(pfVar3->fr_file,pfVar3->fr_line,pcVar9);\n      return;\n    }\n    if (i.tm.opcode_length == '\x02') {\n      if ((i.tm.base_opcode & 0xff0000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x10 & 0xff;\n        if ((i.tm.cpu_flags.array[0]._2_1_ & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        add_prefix(uVar19);\n      }\n    }\n    else {\n      if (i.tm.opcode_length != '\x03') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((i.tm.base_opcode & 0xff000000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x18;\nLAB_00137dbf:\n        if ((uVar19 != 0xf3) || (i.prefix[4] != 0xf3)) goto LAB_00137dd0;\n      }\n    }\n  }" { (if_statement "if (i.tm.opcode_length == '\0') {\n      pcVar9 = (char *)dcgettext(0,"pseudo prefix without instruction",5);\n      as_bad_where(pfVar3->fr_file,pfVar3->fr_line,pcVar9);\n      return;\n    }" if (parenthesized_expression "(i.tm.opcode_length == '\0')" ( (binary_expression "i.tm.opcode_length == '\0'" (field_expression "i.tm.opcode_length" (field_expression "i.tm" identifier . field_identifier) . field_identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      pcVar9 = (char *)dcgettext(0,"pseudo prefix without instruction",5);\n      as_bad_where(pfVar3->fr_file,pfVar3->fr_line,pcVar9);\n      return;\n    }" { (expression_statement "pcVar9 = (char *)dcgettext(0,"pseudo prefix without instruction",5);" (assignment_expression "pcVar9 = (char *)dcgettext(0,"pseudo prefix without instruction",5)" identifier = (cast_expression "(char *)dcgettext(0,"pseudo prefix without instruction",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"pseudo prefix without instruction",5)" identifier (argument_list "(0,"pseudo prefix without instruction",5)" ( number_literal , (string_literal ""pseudo prefix without instruction"" " string_content ") , number_literal ))))) ;) (expression_statement "as_bad_where(pfVar3->fr_file,pfVar3->fr_line,pcVar9);" (call_expression "as_bad_where(pfVar3->fr_file,pfVar3->fr_line,pcVar9)" identifier (argument_list "(pfVar3->fr_file,pfVar3->fr_line,pcVar9)" ( (field_expression "pfVar3->fr_file" identifier -> field_identifier) , (field_expression "pfVar3->fr_line" identifier -> field_identifier) , identifier ))) ;) (return_statement "return;" return ;) })) (if_statement "if (i.tm.opcode_length == '\x02') {\n      if ((i.tm.base_opcode & 0xff0000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x10 & 0xff;\n        if ((i.tm.cpu_flags.array[0]._2_1_ & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        add_prefix(uVar19);\n      }\n    }\n    else {\n      if (i.tm.opcode_length != '\x03') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((i.tm.base_opcode & 0xff000000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x18;\nLAB_00137dbf:\n        if ((uVar19 != 0xf3) || (i.prefix[4] != 0xf3)) goto LAB_00137dd0;\n      }\n    }" if (parenthesized_expression "(i.tm.opcode_length == '\x02')" ( (binary_expression "i.tm.opcode_length == '\x02'" (field_expression "i.tm.opcode_length" (field_expression "i.tm" identifier . field_identifier) . field_identifier) == (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n      if ((i.tm.base_opcode & 0xff0000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x10 & 0xff;\n        if ((i.tm.cpu_flags.array[0]._2_1_ & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        add_prefix(uVar19);\n      }\n    }" { (if_statement "if ((i.tm.base_opcode & 0xff0000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x10 & 0xff;\n        if ((i.tm.cpu_flags.array[0]._2_1_ & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        add_prefix(uVar19);\n      }" if (parenthesized_expression "((i.tm.base_opcode & 0xff0000) != 0)" ( (binary_expression "(i.tm.base_opcode & 0xff0000) != 0" (parenthesized_expression "(i.tm.base_opcode & 0xff0000)" ( (binary_expression "i.tm.base_opcode & 0xff0000" (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n        uVar19 = i.tm.base_opcode >> 0x10 & 0xff;\n        if ((i.tm.cpu_flags.array[0]._2_1_ & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        add_prefix(uVar19);\n      }" { (expression_statement "uVar19 = i.tm.base_opcode >> 0x10 & 0xff;" (assignment_expression "uVar19 = i.tm.base_opcode >> 0x10 & 0xff" identifier = (binary_expression "i.tm.base_opcode >> 0x10 & 0xff" (binary_expression "i.tm.base_opcode >> 0x10" (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier) >> number_literal) & number_literal)) ;) (if_statement "if ((i.tm.cpu_flags.array[0]._2_1_ & 0x10) != 0) goto LAB_00137dbf;" if (parenthesized_expression "((i.tm.cpu_flags.array[0]._2_1_ & 0x10) != 0)" ( (binary_expression "(i.tm.cpu_flags.array[0]._2_1_ & 0x10) != 0" (parenthesized_expression "(i.tm.cpu_flags.array[0]._2_1_ & 0x10)" ( (binary_expression "i.tm.cpu_flags.array[0]._2_1_ & 0x10" (field_expression "i.tm.cpu_flags.array[0]._2_1_" (subscript_expression "i.tm.cpu_flags.array[0]" (field_expression "i.tm.cpu_flags.array" (field_expression "i.tm.cpu_flags" (field_expression "i.tm" identifier . field_identifier) . field_identifier) . field_identifier) [ number_literal ]) . field_identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00137dbf;" goto statement_identifier ;)) (labeled_statement "LAB_00137dd0:\n        add_prefix(uVar19);" statement_identifier : (expression_statement "add_prefix(uVar19);" (call_expression "add_prefix(uVar19)" identifier (argument_list "(uVar19)" ( identifier ))) ;)) })) }) (else_clause "else {\n      if (i.tm.opcode_length != '\x03') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((i.tm.base_opcode & 0xff000000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x18;\nLAB_00137dbf:\n        if ((uVar19 != 0xf3) || (i.prefix[4] != 0xf3)) goto LAB_00137dd0;\n      }\n    }" else (compound_statement "{\n      if (i.tm.opcode_length != '\x03') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((i.tm.base_opcode & 0xff000000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x18;\nLAB_00137dbf:\n        if ((uVar19 != 0xf3) || (i.prefix[4] != 0xf3)) goto LAB_00137dd0;\n      }\n    }" { (if_statement "if (i.tm.opcode_length != '\x03') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }" if (parenthesized_expression "(i.tm.opcode_length != '\x03')" ( (binary_expression "i.tm.opcode_length != '\x03'" (field_expression "i.tm.opcode_length" (field_expression "i.tm" identifier . field_identifier) . field_identifier) != (char_literal "'\x03'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }" { comment (expression_statement "as_abort("../../gas/config/tc-i386.c",0x1e15,"output_insn");" (call_expression "as_abort("../../gas/config/tc-i386.c",0x1e15,"output_insn")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1e15,"output_insn")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_insn"" " string_content ") ))) ;) })) (if_statement "if ((i.tm.base_opcode & 0xff000000) != 0) {\n        uVar19 = i.tm.base_opcode >> 0x18;\nLAB_00137dbf:\n        if ((uVar19 != 0xf3) || (i.prefix[4] != 0xf3)) goto LAB_00137dd0;\n      }" if (parenthesized_expression "((i.tm.base_opcode & 0xff000000) != 0)" ( (binary_expression "(i.tm.base_opcode & 0xff000000) != 0" (parenthesized_expression "(i.tm.base_opcode & 0xff000000)" ( (binary_expression "i.tm.base_opcode & 0xff000000" (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n        uVar19 = i.tm.base_opcode >> 0x18;\nLAB_00137dbf:\n        if ((uVar19 != 0xf3) || (i.prefix[4] != 0xf3)) goto LAB_00137dd0;\n      }" { (expression_statement "uVar19 = i.tm.base_opcode >> 0x18;" (assignment_expression "uVar19 = i.tm.base_opcode >> 0x18" identifier = (binary_expression "i.tm.base_opcode >> 0x18" (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier) >> number_literal)) ;) (labeled_statement "LAB_00137dbf:\n        if ((uVar19 != 0xf3) || (i.prefix[4] != 0xf3)) goto LAB_00137dd0;" statement_identifier : (if_statement "if ((uVar19 != 0xf3) || (i.prefix[4] != 0xf3)) goto LAB_00137dd0;" if (parenthesized_expression "((uVar19 != 0xf3) || (i.prefix[4] != 0xf3))" ( (binary_expression "(uVar19 != 0xf3) || (i.prefix[4] != 0xf3)" (parenthesized_expression "(uVar19 != 0xf3)" ( (binary_expression "uVar19 != 0xf3" identifier != number_literal) )) || (parenthesized_expression "(i.prefix[4] != 0xf3)" ( (binary_expression "i.prefix[4] != 0xf3" (subscript_expression "i.prefix[4]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) != number_literal) ))) )) (goto_statement "goto LAB_00137dd0;" goto statement_identifier ;))) })) }))) })) (if_statement "if ((((x86_elf_abi == X86_64_X32_ABI) && (i.operands == 2)) &&\n      (i.reloc[0] == BFD_RELOC_X86_64_GOTTPOFF)) && (i.prefix[6] == '\0')) {\n    add_prefix(0x40);\n  }" if (parenthesized_expression "((((x86_elf_abi == X86_64_X32_ABI) && (i.operands == 2)) &&\n      (i.reloc[0] == BFD_RELOC_X86_64_GOTTPOFF)) && (i.prefix[6] == '\0'))" ( (binary_expression "(((x86_elf_abi == X86_64_X32_ABI) && (i.operands == 2)) &&\n      (i.reloc[0] == BFD_RELOC_X86_64_GOTTPOFF)) && (i.prefix[6] == '\0')" (parenthesized_expression "(((x86_elf_abi == X86_64_X32_ABI) && (i.operands == 2)) &&\n      (i.reloc[0] == BFD_RELOC_X86_64_GOTTPOFF))" ( (binary_expression "((x86_elf_abi == X86_64_X32_ABI) && (i.operands == 2)) &&\n      (i.reloc[0] == BFD_RELOC_X86_64_GOTTPOFF)" (parenthesized_expression "((x86_elf_abi == X86_64_X32_ABI) && (i.operands == 2))" ( (binary_expression "(x86_elf_abi == X86_64_X32_ABI) && (i.operands == 2)" (parenthesized_expression "(x86_elf_abi == X86_64_X32_ABI)" ( (binary_expression "x86_elf_abi == X86_64_X32_ABI" identifier == identifier) )) && (parenthesized_expression "(i.operands == 2)" ( (binary_expression "i.operands == 2" (field_expression "i.operands" identifier . field_identifier) == number_literal) ))) )) && (parenthesized_expression "(i.reloc[0] == BFD_RELOC_X86_64_GOTTPOFF)" ( (binary_expression "i.reloc[0] == BFD_RELOC_X86_64_GOTTPOFF" (subscript_expression "i.reloc[0]" (field_expression "i.reloc" identifier . field_identifier) [ number_literal ]) == identifier) ))) )) && (parenthesized_expression "(i.prefix[6] == '\0')" ( (binary_expression "i.prefix[6] == '\0'" (subscript_expression "i.prefix[6]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) ))) )) (compound_statement "{\n    add_prefix(0x40);\n  }" { (expression_statement "add_prefix(0x40);" (call_expression "add_prefix(0x40)" identifier (argument_list "(0x40)" ( number_literal ))) ;) })) (expression_statement "puVar21 = i.prefix;" (assignment_expression "puVar21 = i.prefix" identifier = (field_expression "i.prefix" identifier . field_identifier)) ;) (do_statement "do {\n    while (*puVar21 == 0) {\n      puVar21 = puVar21 + 1;\n      if (puVar21 == &i.field_0x12b) goto LAB_00137e10;\n    }\n    frag_append_1_char((uint)*puVar21);\n    puVar21 = puVar21 + 1;\n  } while (puVar21 != &i.field_0x12b);" do (compound_statement "{\n    while (*puVar21 == 0) {\n      puVar21 = puVar21 + 1;\n      if (puVar21 == &i.field_0x12b) goto LAB_00137e10;\n    }\n    frag_append_1_char((uint)*puVar21);\n    puVar21 = puVar21 + 1;\n  }" { (while_statement "while (*puVar21 == 0) {\n      puVar21 = puVar21 + 1;\n      if (puVar21 == &i.field_0x12b) goto LAB_00137e10;\n    }" while (parenthesized_expression "(*puVar21 == 0)" ( (binary_expression "*puVar21 == 0" (pointer_expression "*puVar21" * identifier) == number_literal) )) (compound_statement "{\n      puVar21 = puVar21 + 1;\n      if (puVar21 == &i.field_0x12b) goto LAB_00137e10;\n    }" { (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) (if_statement "if (puVar21 == &i.field_0x12b) goto LAB_00137e10;" if (parenthesized_expression "(puVar21 == &i.field_0x12b)" ( (binary_expression "puVar21 == &i.field_0x12b" identifier == (pointer_expression "&i.field_0x12b" & (field_expression "i.field_0x12b" identifier . field_identifier))) )) (goto_statement "goto LAB_00137e10;" goto statement_identifier ;)) })) (expression_statement "frag_append_1_char((uint)*puVar21);" (call_expression "frag_append_1_char((uint)*puVar21)" identifier (argument_list "((uint)*puVar21)" ( (binary_expression "(uint)*puVar21" (parenthesized_expression "(uint)" ( identifier )) * identifier) ))) ;) (expression_statement "puVar21 = puVar21 + 1;" (assignment_expression "puVar21 = puVar21 + 1" identifier = (binary_expression "puVar21 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar21 != &i.field_0x12b)" ( (binary_expression "puVar21 != &i.field_0x12b" identifier != (pointer_expression "&i.field_0x12b" & (field_expression "i.field_0x12b" identifier . field_identifier))) )) ;) (labeled_statement "LAB_00137e10:\n  if (i.tm.opcode_length == '\x01') {\n    frag_append_1_char(i.tm.base_opcode);\n  }\n  else {\n    if (i.tm.opcode_length == '\x03') {\n      pcVar8 = frag_more(3);\n      pcVar9 = pcVar8 + 1;\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else if (i.tm.opcode_length == '\x04') {\n      pcVar8 = frag_more(4);\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x18);\n      pcVar9 = pcVar8 + 2;\n      pcVar8[1] = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      pcVar9 = frag_more(2);\n    }\n    *pcVar9 = (char)(i.tm.base_opcode >> 8);\n    pcVar9[1] = (char)i.tm.base_opcode;\n  }" statement_identifier : (if_statement "if (i.tm.opcode_length == '\x01') {\n    frag_append_1_char(i.tm.base_opcode);\n  }\n  else {\n    if (i.tm.opcode_length == '\x03') {\n      pcVar8 = frag_more(3);\n      pcVar9 = pcVar8 + 1;\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else if (i.tm.opcode_length == '\x04') {\n      pcVar8 = frag_more(4);\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x18);\n      pcVar9 = pcVar8 + 2;\n      pcVar8[1] = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      pcVar9 = frag_more(2);\n    }\n    *pcVar9 = (char)(i.tm.base_opcode >> 8);\n    pcVar9[1] = (char)i.tm.base_opcode;\n  }" if (parenthesized_expression "(i.tm.opcode_length == '\x01')" ( (binary_expression "i.tm.opcode_length == '\x01'" (field_expression "i.tm.opcode_length" (field_expression "i.tm" identifier . field_identifier) . field_identifier) == (char_literal "'\x01'" ' escape_sequence ')) )) (compound_statement "{\n    frag_append_1_char(i.tm.base_opcode);\n  }" { (expression_statement "frag_append_1_char(i.tm.base_opcode);" (call_expression "frag_append_1_char(i.tm.base_opcode)" identifier (argument_list "(i.tm.base_opcode)" ( (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier) ))) ;) }) (else_clause "else {\n    if (i.tm.opcode_length == '\x03') {\n      pcVar8 = frag_more(3);\n      pcVar9 = pcVar8 + 1;\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else if (i.tm.opcode_length == '\x04') {\n      pcVar8 = frag_more(4);\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x18);\n      pcVar9 = pcVar8 + 2;\n      pcVar8[1] = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      pcVar9 = frag_more(2);\n    }\n    *pcVar9 = (char)(i.tm.base_opcode >> 8);\n    pcVar9[1] = (char)i.tm.base_opcode;\n  }" else (compound_statement "{\n    if (i.tm.opcode_length == '\x03') {\n      pcVar8 = frag_more(3);\n      pcVar9 = pcVar8 + 1;\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else if (i.tm.opcode_length == '\x04') {\n      pcVar8 = frag_more(4);\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x18);\n      pcVar9 = pcVar8 + 2;\n      pcVar8[1] = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      pcVar9 = frag_more(2);\n    }\n    *pcVar9 = (char)(i.tm.base_opcode >> 8);\n    pcVar9[1] = (char)i.tm.base_opcode;\n  }" { (if_statement "if (i.tm.opcode_length == '\x03') {\n      pcVar8 = frag_more(3);\n      pcVar9 = pcVar8 + 1;\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else if (i.tm.opcode_length == '\x04') {\n      pcVar8 = frag_more(4);\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x18);\n      pcVar9 = pcVar8 + 2;\n      pcVar8[1] = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      pcVar9 = frag_more(2);\n    }" if (parenthesized_expression "(i.tm.opcode_length == '\x03')" ( (binary_expression "i.tm.opcode_length == '\x03'" (field_expression "i.tm.opcode_length" (field_expression "i.tm" identifier . field_identifier) . field_identifier) == (char_literal "'\x03'" ' escape_sequence ')) )) (compound_statement "{\n      pcVar8 = frag_more(3);\n      pcVar9 = pcVar8 + 1;\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x10);\n    }" { (expression_statement "pcVar8 = frag_more(3);" (assignment_expression "pcVar8 = frag_more(3)" identifier = (call_expression "frag_more(3)" identifier (argument_list "(3)" ( number_literal )))) ;) (expression_statement "pcVar9 = pcVar8 + 1;" (assignment_expression "pcVar9 = pcVar8 + 1" identifier = (binary_expression "pcVar8 + 1" identifier + number_literal)) ;) (expression_statement "*pcVar8 = (char)(i.tm.base_opcode >> 0x10);" (assignment_expression "*pcVar8 = (char)(i.tm.base_opcode >> 0x10)" (pointer_expression "*pcVar8" * identifier) = (cast_expression "(char)(i.tm.base_opcode >> 0x10)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(i.tm.base_opcode >> 0x10)" ( (binary_expression "i.tm.base_opcode >> 0x10" (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier) >> number_literal) )))) ;) }) (else_clause "else if (i.tm.opcode_length == '\x04') {\n      pcVar8 = frag_more(4);\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x18);\n      pcVar9 = pcVar8 + 2;\n      pcVar8[1] = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      pcVar9 = frag_more(2);\n    }" else (if_statement "if (i.tm.opcode_length == '\x04') {\n      pcVar8 = frag_more(4);\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x18);\n      pcVar9 = pcVar8 + 2;\n      pcVar8[1] = (char)(i.tm.base_opcode >> 0x10);\n    }\n    else {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      pcVar9 = frag_more(2);\n    }" if (parenthesized_expression "(i.tm.opcode_length == '\x04')" ( (binary_expression "i.tm.opcode_length == '\x04'" (field_expression "i.tm.opcode_length" (field_expression "i.tm" identifier . field_identifier) . field_identifier) == (char_literal "'\x04'" ' escape_sequence ')) )) (compound_statement "{\n      pcVar8 = frag_more(4);\n      *pcVar8 = (char)(i.tm.base_opcode >> 0x18);\n      pcVar9 = pcVar8 + 2;\n      pcVar8[1] = (char)(i.tm.base_opcode >> 0x10);\n    }" { (expression_statement "pcVar8 = frag_more(4);" (assignment_expression "pcVar8 = frag_more(4)" identifier = (call_expression "frag_more(4)" identifier (argument_list "(4)" ( number_literal )))) ;) (expression_statement "*pcVar8 = (char)(i.tm.base_opcode >> 0x18);" (assignment_expression "*pcVar8 = (char)(i.tm.base_opcode >> 0x18)" (pointer_expression "*pcVar8" * identifier) = (cast_expression "(char)(i.tm.base_opcode >> 0x18)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(i.tm.base_opcode >> 0x18)" ( (binary_expression "i.tm.base_opcode >> 0x18" (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier) >> number_literal) )))) ;) (expression_statement "pcVar9 = pcVar8 + 2;" (assignment_expression "pcVar9 = pcVar8 + 2" identifier = (binary_expression "pcVar8 + 2" identifier + number_literal)) ;) (expression_statement "pcVar8[1] = (char)(i.tm.base_opcode >> 0x10);" (assignment_expression "pcVar8[1] = (char)(i.tm.base_opcode >> 0x10)" (subscript_expression "pcVar8[1]" identifier [ number_literal ]) = (cast_expression "(char)(i.tm.base_opcode >> 0x10)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(i.tm.base_opcode >> 0x10)" ( (binary_expression "i.tm.base_opcode >> 0x10" (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier) >> number_literal) )))) ;) }) (else_clause "else {\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      pcVar9 = frag_more(2);\n    }" else (compound_statement "{\n      if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      pcVar9 = frag_more(2);\n    }" { (if_statement "if (i.tm.opcode_length != '\x02') {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }" if (parenthesized_expression "(i.tm.opcode_length != '\x02')" ( (binary_expression "i.tm.opcode_length != '\x02'" (field_expression "i.tm.opcode_length" (field_expression "i.tm" identifier . field_identifier) . field_identifier) != (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }" { comment (expression_statement "as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn");" (call_expression "as_abort("../../gas/config/tc-i386.c",0x1e5c,"output_insn")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1e5c,"output_insn")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_insn"" " string_content ") ))) ;) })) (expression_statement "pcVar9 = frag_more(2);" (assignment_expression "pcVar9 = frag_more(2)" identifier = (call_expression "frag_more(2)" identifier (argument_list "(2)" ( number_literal )))) ;) }))))) (expression_statement "*pcVar9 = (char)(i.tm.base_opcode >> 8);" (assignment_expression "*pcVar9 = (char)(i.tm.base_opcode >> 8)" (pointer_expression "*pcVar9" * identifier) = (cast_expression "(char)(i.tm.base_opcode >> 8)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(i.tm.base_opcode >> 8)" ( (binary_expression "i.tm.base_opcode >> 8" (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier) >> number_literal) )))) ;) (expression_statement "pcVar9[1] = (char)i.tm.base_opcode;" (assignment_expression "pcVar9[1] = (char)i.tm.base_opcode" (subscript_expression "pcVar9[1]" identifier [ number_literal ]) = (cast_expression "(char)i.tm.base_opcode" ( (type_descriptor "char" primitive_type) ) (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier))) ;) })))) (if_statement "if ((((i.tm.opcode_modifier._0_1_ & 8) != 0) &&\n      (frag_append_1_char(i.rm.reg * 8 | i.rm.mode << 6 | i.rm.regmem), i.rm.regmem == 4)) &&\n     ((i.rm.mode != 3 &&\n      ((i.base_reg == (reg_entry *)0x0 || (((ulong)(i.base_reg)->reg_type & 0x40000000) == 0)))))) {\n    frag_append_1_char(i.sib.index * 8 | i.sib.scale << 6 | i.sib.base);\n  }" if (parenthesized_expression "((((i.tm.opcode_modifier._0_1_ & 8) != 0) &&\n      (frag_append_1_char(i.rm.reg * 8 | i.rm.mode << 6 | i.rm.regmem), i.rm.regmem == 4)) &&\n     ((i.rm.mode != 3 &&\n      ((i.base_reg == (reg_entry *)0x0 || (((ulong)(i.base_reg)->reg_type & 0x40000000) == 0))))))" ( (binary_expression "(((i.tm.opcode_modifier._0_1_ & 8) != 0) &&\n      (frag_append_1_char(i.rm.reg * 8 | i.rm.mode << 6 | i.rm.regmem), i.rm.regmem == 4)) &&\n     ((i.rm.mode != 3 &&\n      ((i.base_reg == (reg_entry *)0x0 || (((ulong)(i.base_reg)->reg_type & 0x40000000) == 0)))))" (parenthesized_expression "(((i.tm.opcode_modifier._0_1_ & 8) != 0) &&\n      (frag_append_1_char(i.rm.reg * 8 | i.rm.mode << 6 | i.rm.regmem), i.rm.regmem == 4))" ( (binary_expression "((i.tm.opcode_modifier._0_1_ & 8) != 0) &&\n      (frag_append_1_char(i.rm.reg * 8 | i.rm.mode << 6 | i.rm.regmem), i.rm.regmem == 4)" (parenthesized_expression "((i.tm.opcode_modifier._0_1_ & 8) != 0)" ( (binary_expression "(i.tm.opcode_modifier._0_1_ & 8) != 0" (parenthesized_expression "(i.tm.opcode_modifier._0_1_ & 8)" ( (binary_expression "i.tm.opcode_modifier._0_1_ & 8" (field_expression "i.tm.opcode_modifier._0_1_" (field_expression "i.tm.opcode_modifier" (field_expression "i.tm" identifier . field_identifier) . field_identifier) . field_identifier) & number_literal) )) != number_literal) )) && (parenthesized_expression "(frag_append_1_char(i.rm.reg * 8 | i.rm.mode << 6 | i.rm.regmem), i.rm.regmem == 4)" ( (comma_expression "frag_append_1_char(i.rm.reg * 8 | i.rm.mode << 6 | i.rm.regmem), i.rm.regmem == 4" (call_expression "frag_append_1_char(i.rm.reg * 8 | i.rm.mode << 6 | i.rm.regmem)" identifier (argument_list "(i.rm.reg * 8 | i.rm.mode << 6 | i.rm.regmem)" ( (binary_expression "i.rm.reg * 8 | i.rm.mode << 6 | i.rm.regmem" (binary_expression "i.rm.reg * 8 | i.rm.mode << 6" (binary_expression "i.rm.reg * 8" (field_expression "i.rm.reg" (field_expression "i.rm" identifier . field_identifier) . field_identifier) * number_literal) | (binary_expression "i.rm.mode << 6" (field_expression "i.rm.mode" (field_expression "i.rm" identifier . field_identifier) . field_identifier) << number_literal)) | (field_expression "i.rm.regmem" (field_expression "i.rm" identifier . field_identifier) . field_identifier)) ))) , (binary_expression "i.rm.regmem == 4" (field_expression "i.rm.regmem" (field_expression "i.rm" identifier . field_identifier) . field_identifier) == number_literal)) ))) )) && (parenthesized_expression "((i.rm.mode != 3 &&\n      ((i.base_reg == (reg_entry *)0x0 || (((ulong)(i.base_reg)->reg_type & 0x40000000) == 0)))))" ( (parenthesized_expression "(i.rm.mode != 3 &&\n      ((i.base_reg == (reg_entry *)0x0 || (((ulong)(i.base_reg)->reg_type & 0x40000000) == 0))))" ( (binary_expression "i.rm.mode != 3 &&\n      ((i.base_reg == (reg_entry *)0x0 || (((ulong)(i.base_reg)->reg_type & 0x40000000) == 0)))" (binary_expression "i.rm.mode != 3" (field_expression "i.rm.mode" (field_expression "i.rm" identifier . field_identifier) . field_identifier) != number_literal) && (parenthesized_expression "((i.base_reg == (reg_entry *)0x0 || (((ulong)(i.base_reg)->reg_type & 0x40000000) == 0)))" ( (parenthesized_expression "(i.base_reg == (reg_entry *)0x0 || (((ulong)(i.base_reg)->reg_type & 0x40000000) == 0))" ( (binary_expression "i.base_reg == (reg_entry *)0x0 || (((ulong)(i.base_reg)->reg_type & 0x40000000) == 0)" (binary_expression "i.base_reg == (reg_entry *)0x0" (field_expression "i.base_reg" identifier . field_identifier) == (cast_expression "(reg_entry *)0x0" ( (type_descriptor "reg_entry *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) || (parenthesized_expression "(((ulong)(i.base_reg)->reg_type & 0x40000000) == 0)" ( (binary_expression "((ulong)(i.base_reg)->reg_type & 0x40000000) == 0" (parenthesized_expression "((ulong)(i.base_reg)->reg_type & 0x40000000)" ( (binary_expression "(ulong)(i.base_reg)->reg_type & 0x40000000" (field_expression "(ulong)(i.base_reg)->reg_type" (call_expression "(ulong)(i.base_reg)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(i.base_reg)" ( (field_expression "i.base_reg" identifier . field_identifier) ))) -> field_identifier) & number_literal) )) == number_literal) ))) )) ))) )) ))) )) (compound_statement "{\n    frag_append_1_char(i.sib.index * 8 | i.sib.scale << 6 | i.sib.base);\n  }" { (expression_statement "frag_append_1_char(i.sib.index * 8 | i.sib.scale << 6 | i.sib.base);" (call_expression "frag_append_1_char(i.sib.index * 8 | i.sib.scale << 6 | i.sib.base)" identifier (argument_list "(i.sib.index * 8 | i.sib.scale << 6 | i.sib.base)" ( (binary_expression "i.sib.index * 8 | i.sib.scale << 6 | i.sib.base" (binary_expression "i.sib.index * 8 | i.sib.scale << 6" (binary_expression "i.sib.index * 8" (field_expression "i.sib.index" (field_expression "i.sib" identifier . field_identifier) . field_identifier) * number_literal) | (binary_expression "i.sib.scale << 6" (field_expression "i.sib.scale" (field_expression "i.sib" identifier . field_identifier) . field_identifier) << number_literal)) | (field_expression "i.sib.base" (field_expression "i.sib" identifier . field_identifier) . field_identifier)) ))) ;) })) (if_statement "if (i.disp_operands != 0) {\n    if (i.operands == 0) {\n      return;\n    }\n    uVar29 = 0;\n    uVar19 = i.operands;\n    do {\n      uVar28 = i.operands;\n      if ((*(byte *)((long)i.types + uVar29 * 8 + 2) & 0x1f) != 0) {\n        peVar15 = i.op[uVar29].disps;\n        bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n        bVar17 = bVar16 >> 4 & 1;\n        if (peVar15->field_0x18 == '\x02') {\n          lVar20 = peVar15->X_add_number;\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) == 0) {\n              bVar16 = bVar16 >> 1 & 1;\n              sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n              iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n            }\n            else {\n              sVar25 = 1;\n              iVar23 = 1;\n              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);\n            }\n          }\n          else {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          vVar12 = offset_in_range(lVar20,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n          uVar28 = i.operands;\n        }\n        else {\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar17 = bVar16 >> 1;\n            bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n            uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2;\n            uVar28 = i.flags[uVar29];\n          }\n          else {\n            uVar28 = i.flags[uVar29];\n            if ((bVar16 & 1) != 0) goto LAB_00138302;\n            uVar27 = 8;\n          }\n          local_58 = bVar16 >> 3 & 1;\n          uVar28 = uVar28 & 1;\n          if ((uVar28 != 0) && (i.imm_operands != 0)) {\n            uVar11 = 0;\n            cVar24 = '\0';\n            do {\n              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }\n              uVar11 = uVar11 + 1;\n            } while ((uint)uVar11 < uVar19);\n            if (cVar24 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          pcVar9 = frag_more((long)(int)uVar27);\n          bVar6 = reloc(uVar27,uVar28,local_58,i.reloc[uVar29]);\n          pfVar26 = frag_now;\n          if (GOT_symbol == (symbolS *)0x0) {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            if (GOT_symbol == peVar15->X_add_symbol) {\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }\n          }\nLAB_001383d2:\n          pfVar10 = fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6);\n          prVar2 = i.base_reg;\n          uVar28 = i.operands;\n          if (i.prefix[3] == '\0') {\n            if (generate_relax_relocations == 0) {\n              if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }\n            }\n            else if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar19 = uVar28;\n      uVar29 = uVar29 + 1;\n    } while ((uint)uVar29 < uVar19);\n  }" if (parenthesized_expression "(i.disp_operands != 0)" ( (binary_expression "i.disp_operands != 0" (field_expression "i.disp_operands" identifier . field_identifier) != number_literal) )) (compound_statement "{\n    if (i.operands == 0) {\n      return;\n    }\n    uVar29 = 0;\n    uVar19 = i.operands;\n    do {\n      uVar28 = i.operands;\n      if ((*(byte *)((long)i.types + uVar29 * 8 + 2) & 0x1f) != 0) {\n        peVar15 = i.op[uVar29].disps;\n        bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n        bVar17 = bVar16 >> 4 & 1;\n        if (peVar15->field_0x18 == '\x02') {\n          lVar20 = peVar15->X_add_number;\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) == 0) {\n              bVar16 = bVar16 >> 1 & 1;\n              sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n              iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n            }\n            else {\n              sVar25 = 1;\n              iVar23 = 1;\n              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);\n            }\n          }\n          else {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          vVar12 = offset_in_range(lVar20,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n          uVar28 = i.operands;\n        }\n        else {\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar17 = bVar16 >> 1;\n            bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n            uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2;\n            uVar28 = i.flags[uVar29];\n          }\n          else {\n            uVar28 = i.flags[uVar29];\n            if ((bVar16 & 1) != 0) goto LAB_00138302;\n            uVar27 = 8;\n          }\n          local_58 = bVar16 >> 3 & 1;\n          uVar28 = uVar28 & 1;\n          if ((uVar28 != 0) && (i.imm_operands != 0)) {\n            uVar11 = 0;\n            cVar24 = '\0';\n            do {\n              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }\n              uVar11 = uVar11 + 1;\n            } while ((uint)uVar11 < uVar19);\n            if (cVar24 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          pcVar9 = frag_more((long)(int)uVar27);\n          bVar6 = reloc(uVar27,uVar28,local_58,i.reloc[uVar29]);\n          pfVar26 = frag_now;\n          if (GOT_symbol == (symbolS *)0x0) {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            if (GOT_symbol == peVar15->X_add_symbol) {\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }\n          }\nLAB_001383d2:\n          pfVar10 = fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6);\n          prVar2 = i.base_reg;\n          uVar28 = i.operands;\n          if (i.prefix[3] == '\0') {\n            if (generate_relax_relocations == 0) {\n              if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }\n            }\n            else if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar19 = uVar28;\n      uVar29 = uVar29 + 1;\n    } while ((uint)uVar29 < uVar19);\n  }" { (if_statement "if (i.operands == 0) {\n      return;\n    }" if (parenthesized_expression "(i.operands == 0)" ( (binary_expression "i.operands == 0" (field_expression "i.operands" identifier . field_identifier) == number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "uVar29 = 0;" (assignment_expression "uVar29 = 0" identifier = number_literal) ;) (expression_statement "uVar19 = i.operands;" (assignment_expression "uVar19 = i.operands" identifier = (field_expression "i.operands" identifier . field_identifier)) ;) (do_statement "do {\n      uVar28 = i.operands;\n      if ((*(byte *)((long)i.types + uVar29 * 8 + 2) & 0x1f) != 0) {\n        peVar15 = i.op[uVar29].disps;\n        bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n        bVar17 = bVar16 >> 4 & 1;\n        if (peVar15->field_0x18 == '\x02') {\n          lVar20 = peVar15->X_add_number;\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) == 0) {\n              bVar16 = bVar16 >> 1 & 1;\n              sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n              iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n            }\n            else {\n              sVar25 = 1;\n              iVar23 = 1;\n              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);\n            }\n          }\n          else {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          vVar12 = offset_in_range(lVar20,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n          uVar28 = i.operands;\n        }\n        else {\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar17 = bVar16 >> 1;\n            bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n            uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2;\n            uVar28 = i.flags[uVar29];\n          }\n          else {\n            uVar28 = i.flags[uVar29];\n            if ((bVar16 & 1) != 0) goto LAB_00138302;\n            uVar27 = 8;\n          }\n          local_58 = bVar16 >> 3 & 1;\n          uVar28 = uVar28 & 1;\n          if ((uVar28 != 0) && (i.imm_operands != 0)) {\n            uVar11 = 0;\n            cVar24 = '\0';\n            do {\n              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }\n              uVar11 = uVar11 + 1;\n            } while ((uint)uVar11 < uVar19);\n            if (cVar24 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          pcVar9 = frag_more((long)(int)uVar27);\n          bVar6 = reloc(uVar27,uVar28,local_58,i.reloc[uVar29]);\n          pfVar26 = frag_now;\n          if (GOT_symbol == (symbolS *)0x0) {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            if (GOT_symbol == peVar15->X_add_symbol) {\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }\n          }\nLAB_001383d2:\n          pfVar10 = fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6);\n          prVar2 = i.base_reg;\n          uVar28 = i.operands;\n          if (i.prefix[3] == '\0') {\n            if (generate_relax_relocations == 0) {\n              if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }\n            }\n            else if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar19 = uVar28;\n      uVar29 = uVar29 + 1;\n    } while ((uint)uVar29 < uVar19);" do (compound_statement "{\n      uVar28 = i.operands;\n      if ((*(byte *)((long)i.types + uVar29 * 8 + 2) & 0x1f) != 0) {\n        peVar15 = i.op[uVar29].disps;\n        bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n        bVar17 = bVar16 >> 4 & 1;\n        if (peVar15->field_0x18 == '\x02') {\n          lVar20 = peVar15->X_add_number;\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) == 0) {\n              bVar16 = bVar16 >> 1 & 1;\n              sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n              iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n            }\n            else {\n              sVar25 = 1;\n              iVar23 = 1;\n              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);\n            }\n          }\n          else {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          vVar12 = offset_in_range(lVar20,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n          uVar28 = i.operands;\n        }\n        else {\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar17 = bVar16 >> 1;\n            bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n            uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2;\n            uVar28 = i.flags[uVar29];\n          }\n          else {\n            uVar28 = i.flags[uVar29];\n            if ((bVar16 & 1) != 0) goto LAB_00138302;\n            uVar27 = 8;\n          }\n          local_58 = bVar16 >> 3 & 1;\n          uVar28 = uVar28 & 1;\n          if ((uVar28 != 0) && (i.imm_operands != 0)) {\n            uVar11 = 0;\n            cVar24 = '\0';\n            do {\n              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }\n              uVar11 = uVar11 + 1;\n            } while ((uint)uVar11 < uVar19);\n            if (cVar24 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          pcVar9 = frag_more((long)(int)uVar27);\n          bVar6 = reloc(uVar27,uVar28,local_58,i.reloc[uVar29]);\n          pfVar26 = frag_now;\n          if (GOT_symbol == (symbolS *)0x0) {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            if (GOT_symbol == peVar15->X_add_symbol) {\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }\n          }\nLAB_001383d2:\n          pfVar10 = fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6);\n          prVar2 = i.base_reg;\n          uVar28 = i.operands;\n          if (i.prefix[3] == '\0') {\n            if (generate_relax_relocations == 0) {\n              if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }\n            }\n            else if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar19 = uVar28;\n      uVar29 = uVar29 + 1;\n    }" { (expression_statement "uVar28 = i.operands;" (assignment_expression "uVar28 = i.operands" identifier = (field_expression "i.operands" identifier . field_identifier)) ;) (if_statement "if ((*(byte *)((long)i.types + uVar29 * 8 + 2) & 0x1f) != 0) {\n        peVar15 = i.op[uVar29].disps;\n        bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n        bVar17 = bVar16 >> 4 & 1;\n        if (peVar15->field_0x18 == '\x02') {\n          lVar20 = peVar15->X_add_number;\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) == 0) {\n              bVar16 = bVar16 >> 1 & 1;\n              sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n              iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n            }\n            else {\n              sVar25 = 1;\n              iVar23 = 1;\n              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);\n            }\n          }\n          else {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          vVar12 = offset_in_range(lVar20,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n          uVar28 = i.operands;\n        }\n        else {\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar17 = bVar16 >> 1;\n            bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n            uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2;\n            uVar28 = i.flags[uVar29];\n          }\n          else {\n            uVar28 = i.flags[uVar29];\n            if ((bVar16 & 1) != 0) goto LAB_00138302;\n            uVar27 = 8;\n          }\n          local_58 = bVar16 >> 3 & 1;\n          uVar28 = uVar28 & 1;\n          if ((uVar28 != 0) && (i.imm_operands != 0)) {\n            uVar11 = 0;\n            cVar24 = '\0';\n            do {\n              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }\n              uVar11 = uVar11 + 1;\n            } while ((uint)uVar11 < uVar19);\n            if (cVar24 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          pcVar9 = frag_more((long)(int)uVar27);\n          bVar6 = reloc(uVar27,uVar28,local_58,i.reloc[uVar29]);\n          pfVar26 = frag_now;\n          if (GOT_symbol == (symbolS *)0x0) {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            if (GOT_symbol == peVar15->X_add_symbol) {\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }\n          }\nLAB_001383d2:\n          pfVar10 = fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6);\n          prVar2 = i.base_reg;\n          uVar28 = i.operands;\n          if (i.prefix[3] == '\0') {\n            if (generate_relax_relocations == 0) {\n              if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }\n            }\n            else if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;\n          }\n        }\n      }" if (parenthesized_expression "((*(byte *)((long)i.types + uVar29 * 8 + 2) & 0x1f) != 0)" ( (binary_expression "(*(byte *)((long)i.types + uVar29 * 8 + 2) & 0x1f) != 0" (parenthesized_expression "(*(byte *)((long)i.types + uVar29 * 8 + 2) & 0x1f)" ( (binary_expression "*(byte *)((long)i.types + uVar29 * 8 + 2) & 0x1f" (pointer_expression "*(byte *)((long)i.types + uVar29 * 8 + 2)" * (cast_expression "(byte *)((long)i.types + uVar29 * 8 + 2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)i.types + uVar29 * 8 + 2)" ( (binary_expression "(long)i.types + uVar29 * 8 + 2" (binary_expression "(long)i.types + uVar29 * 8" (cast_expression "(long)i.types" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "i.types" identifier . field_identifier)) + (binary_expression "uVar29 * 8" identifier * number_literal)) + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n        peVar15 = i.op[uVar29].disps;\n        bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n        bVar17 = bVar16 >> 4 & 1;\n        if (peVar15->field_0x18 == '\x02') {\n          lVar20 = peVar15->X_add_number;\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) == 0) {\n              bVar16 = bVar16 >> 1 & 1;\n              sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n              iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n            }\n            else {\n              sVar25 = 1;\n              iVar23 = 1;\n              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);\n            }\n          }\n          else {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          vVar12 = offset_in_range(lVar20,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n          uVar28 = i.operands;\n        }\n        else {\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar17 = bVar16 >> 1;\n            bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n            uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2;\n            uVar28 = i.flags[uVar29];\n          }\n          else {\n            uVar28 = i.flags[uVar29];\n            if ((bVar16 & 1) != 0) goto LAB_00138302;\n            uVar27 = 8;\n          }\n          local_58 = bVar16 >> 3 & 1;\n          uVar28 = uVar28 & 1;\n          if ((uVar28 != 0) && (i.imm_operands != 0)) {\n            uVar11 = 0;\n            cVar24 = '\0';\n            do {\n              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }\n              uVar11 = uVar11 + 1;\n            } while ((uint)uVar11 < uVar19);\n            if (cVar24 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          pcVar9 = frag_more((long)(int)uVar27);\n          bVar6 = reloc(uVar27,uVar28,local_58,i.reloc[uVar29]);\n          pfVar26 = frag_now;\n          if (GOT_symbol == (symbolS *)0x0) {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            if (GOT_symbol == peVar15->X_add_symbol) {\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }\n          }\nLAB_001383d2:\n          pfVar10 = fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6);\n          prVar2 = i.base_reg;\n          uVar28 = i.operands;\n          if (i.prefix[3] == '\0') {\n            if (generate_relax_relocations == 0) {\n              if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }\n            }\n            else if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;\n          }\n        }\n      }" { (expression_statement "peVar15 = i.op[uVar29].disps;" (assignment_expression "peVar15 = i.op[uVar29].disps" identifier = (field_expression "i.op[uVar29].disps" (subscript_expression "i.op[uVar29]" (field_expression "i.op" identifier . field_identifier) [ identifier ]) . field_identifier)) ;) (expression_statement "bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);" (assignment_expression "bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2)" identifier = (pointer_expression "*(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2)" * (cast_expression "(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)i.types + (uVar29 & 0xffffffff) * 8 + 2)" ( (binary_expression "(long)i.types + (uVar29 & 0xffffffff) * 8 + 2" (binary_expression "(long)i.types + (uVar29 & 0xffffffff) * 8" (cast_expression "(long)i.types" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "i.types" identifier . field_identifier)) + (binary_expression "(uVar29 & 0xffffffff) * 8" (parenthesized_expression "(uVar29 & 0xffffffff)" ( (binary_expression "uVar29 & 0xffffffff" identifier & number_literal) )) * number_literal)) + number_literal) ))))) ;) (expression_statement "bVar17 = bVar16 >> 4 & 1;" (assignment_expression "bVar17 = bVar16 >> 4 & 1" identifier = (binary_expression "bVar16 >> 4 & 1" (binary_expression "bVar16 >> 4" identifier >> number_literal) & number_literal)) ;) (if_statement "if (peVar15->field_0x18 == '\x02') {\n          lVar20 = peVar15->X_add_number;\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) == 0) {\n              bVar16 = bVar16 >> 1 & 1;\n              sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n              iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n            }\n            else {\n              sVar25 = 1;\n              iVar23 = 1;\n              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);\n            }\n          }\n          else {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          vVar12 = offset_in_range(lVar20,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n          uVar28 = i.operands;\n        }\n        else {\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar17 = bVar16 >> 1;\n            bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n            uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2;\n            uVar28 = i.flags[uVar29];\n          }\n          else {\n            uVar28 = i.flags[uVar29];\n            if ((bVar16 & 1) != 0) goto LAB_00138302;\n            uVar27 = 8;\n          }\n          local_58 = bVar16 >> 3 & 1;\n          uVar28 = uVar28 & 1;\n          if ((uVar28 != 0) && (i.imm_operands != 0)) {\n            uVar11 = 0;\n            cVar24 = '\0';\n            do {\n              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }\n              uVar11 = uVar11 + 1;\n            } while ((uint)uVar11 < uVar19);\n            if (cVar24 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          pcVar9 = frag_more((long)(int)uVar27);\n          bVar6 = reloc(uVar27,uVar28,local_58,i.reloc[uVar29]);\n          pfVar26 = frag_now;\n          if (GOT_symbol == (symbolS *)0x0) {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            if (GOT_symbol == peVar15->X_add_symbol) {\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }\n          }\nLAB_001383d2:\n          pfVar10 = fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6);\n          prVar2 = i.base_reg;\n          uVar28 = i.operands;\n          if (i.prefix[3] == '\0') {\n            if (generate_relax_relocations == 0) {\n              if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }\n            }\n            else if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;\n          }\n        }" if (parenthesized_expression "(peVar15->field_0x18 == '\x02')" ( (binary_expression "peVar15->field_0x18 == '\x02'" (field_expression "peVar15->field_0x18" identifier -> field_identifier) == (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n          lVar20 = peVar15->X_add_number;\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) == 0) {\n              bVar16 = bVar16 >> 1 & 1;\n              sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n              iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n            }\n            else {\n              sVar25 = 1;\n              iVar23 = 1;\n              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);\n            }\n          }\n          else {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          vVar12 = offset_in_range(lVar20,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n          uVar28 = i.operands;\n        }" { (expression_statement "lVar20 = peVar15->X_add_number;" (assignment_expression "lVar20 = peVar15->X_add_number" identifier = (field_expression "peVar15->X_add_number" identifier -> field_identifier)) ;) (if_statement "if (bVar17 == 0) {\n            if ((bVar16 & 1) == 0) {\n              bVar16 = bVar16 >> 1 & 1;\n              sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n              iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n            }\n            else {\n              sVar25 = 1;\n              iVar23 = 1;\n              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);\n            }\n          }\n          else {\n            sVar25 = 8;\n            iVar23 = 8;\n          }" if (parenthesized_expression "(bVar17 == 0)" ( (binary_expression "bVar17 == 0" identifier == number_literal) )) (compound_statement "{\n            if ((bVar16 & 1) == 0) {\n              bVar16 = bVar16 >> 1 & 1;\n              sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n              iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n            }\n            else {\n              sVar25 = 1;\n              iVar23 = 1;\n              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);\n            }\n          }" { (if_statement "if ((bVar16 & 1) == 0) {\n              bVar16 = bVar16 >> 1 & 1;\n              sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n              iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n            }\n            else {\n              sVar25 = 1;\n              iVar23 = 1;\n              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);\n            }" if (parenthesized_expression "((bVar16 & 1) == 0)" ( (binary_expression "(bVar16 & 1) == 0" (parenthesized_expression "(bVar16 & 1)" ( (binary_expression "bVar16 & 1" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n              bVar16 = bVar16 >> 1 & 1;\n              sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n              iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n            }" { (expression_statement "bVar16 = bVar16 >> 1 & 1;" (assignment_expression "bVar16 = bVar16 >> 1 & 1" identifier = (binary_expression "bVar16 >> 1 & 1" (binary_expression "bVar16 >> 1" identifier >> number_literal) & number_literal)) ;) (expression_statement "sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;" (assignment_expression "sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2" identifier = (binary_expression "(ulong)(-(uint)(bVar16 == 0) & 2) + 2" (call_expression "(ulong)(-(uint)(bVar16 == 0) & 2)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(-(uint)(bVar16 == 0) & 2)" ( (binary_expression "-(uint)(bVar16 == 0) & 2" (unary_expression "-(uint)(bVar16 == 0)" - (call_expression "(uint)(bVar16 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar16 == 0)" ( (binary_expression "bVar16 == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal)) ;) (expression_statement "iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;" (assignment_expression "iVar23 = (-(uint)(bVar16 == 0) & 2) + 2" identifier = (binary_expression "(-(uint)(bVar16 == 0) & 2) + 2" (parenthesized_expression "(-(uint)(bVar16 == 0) & 2)" ( (binary_expression "-(uint)(bVar16 == 0) & 2" (unary_expression "-(uint)(bVar16 == 0)" - (call_expression "(uint)(bVar16 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar16 == 0)" ( (binary_expression "bVar16 == 0" identifier == number_literal) )))) & number_literal) )) + number_literal)) ;) }) (else_clause "else {\n              sVar25 = 1;\n              iVar23 = 1;\n              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);\n            }" else (compound_statement "{\n              sVar25 = 1;\n              iVar23 = 1;\n              lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);\n            }" { (expression_statement "sVar25 = 1;" (assignment_expression "sVar25 = 1" identifier = number_literal) ;) (expression_statement "iVar23 = 1;" (assignment_expression "iVar23 = 1" identifier = number_literal) ;) (expression_statement "lVar20 = lVar20 >> ((byte)i.memshift & 0x3f);" (assignment_expression "lVar20 = lVar20 >> ((byte)i.memshift & 0x3f)" identifier = (binary_expression "lVar20 >> ((byte)i.memshift & 0x3f)" identifier >> (parenthesized_expression "((byte)i.memshift & 0x3f)" ( (binary_expression "(byte)i.memshift & 0x3f" (cast_expression "(byte)i.memshift" ( (type_descriptor "byte" type_identifier) ) (field_expression "i.memshift" identifier . field_identifier)) & number_literal) )))) ;) }))) }) (else_clause "else {\n            sVar25 = 8;\n            iVar23 = 8;\n          }" else (compound_statement "{\n            sVar25 = 8;\n            iVar23 = 8;\n          }" { (expression_statement "sVar25 = 8;" (assignment_expression "sVar25 = 8" identifier = number_literal) ;) (expression_statement "iVar23 = 8;" (assignment_expression "iVar23 = 8" identifier = number_literal) ;) }))) (expression_statement "vVar12 = offset_in_range(lVar20,iVar23);" (assignment_expression "vVar12 = offset_in_range(lVar20,iVar23)" identifier = (call_expression "offset_in_range(lVar20,iVar23)" identifier (argument_list "(lVar20,iVar23)" ( identifier , identifier )))) ;) (expression_statement "pcVar9 = frag_more(sVar25);" (assignment_expression "pcVar9 = frag_more(sVar25)" identifier = (call_expression "frag_more(sVar25)" identifier (argument_list "(sVar25)" ( identifier )))) ;) (expression_statement "number_to_chars_littleendian(pcVar9,vVar12,iVar23);" (call_expression "number_to_chars_littleendian(pcVar9,vVar12,iVar23)" identifier (argument_list "(pcVar9,vVar12,iVar23)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar28 = i.operands;" (assignment_expression "uVar28 = i.operands" identifier = (field_expression "i.operands" identifier . field_identifier)) ;) }) (else_clause "else {\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar17 = bVar16 >> 1;\n            bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n            uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2;\n            uVar28 = i.flags[uVar29];\n          }\n          else {\n            uVar28 = i.flags[uVar29];\n            if ((bVar16 & 1) != 0) goto LAB_00138302;\n            uVar27 = 8;\n          }\n          local_58 = bVar16 >> 3 & 1;\n          uVar28 = uVar28 & 1;\n          if ((uVar28 != 0) && (i.imm_operands != 0)) {\n            uVar11 = 0;\n            cVar24 = '\0';\n            do {\n              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }\n              uVar11 = uVar11 + 1;\n            } while ((uint)uVar11 < uVar19);\n            if (cVar24 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          pcVar9 = frag_more((long)(int)uVar27);\n          bVar6 = reloc(uVar27,uVar28,local_58,i.reloc[uVar29]);\n          pfVar26 = frag_now;\n          if (GOT_symbol == (symbolS *)0x0) {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            if (GOT_symbol == peVar15->X_add_symbol) {\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }\n          }\nLAB_001383d2:\n          pfVar10 = fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6);\n          prVar2 = i.base_reg;\n          uVar28 = i.operands;\n          if (i.prefix[3] == '\0') {\n            if (generate_relax_relocations == 0) {\n              if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }\n            }\n            else if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;\n          }\n        }" else (compound_statement "{\n          if (bVar17 == 0) {\n            if ((bVar16 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar17 = bVar16 >> 1;\n            bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n            uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2;\n            uVar28 = i.flags[uVar29];\n          }\n          else {\n            uVar28 = i.flags[uVar29];\n            if ((bVar16 & 1) != 0) goto LAB_00138302;\n            uVar27 = 8;\n          }\n          local_58 = bVar16 >> 3 & 1;\n          uVar28 = uVar28 & 1;\n          if ((uVar28 != 0) && (i.imm_operands != 0)) {\n            uVar11 = 0;\n            cVar24 = '\0';\n            do {\n              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }\n              uVar11 = uVar11 + 1;\n            } while ((uint)uVar11 < uVar19);\n            if (cVar24 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          pcVar9 = frag_more((long)(int)uVar27);\n          bVar6 = reloc(uVar27,uVar28,local_58,i.reloc[uVar29]);\n          pfVar26 = frag_now;\n          if (GOT_symbol == (symbolS *)0x0) {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            if (GOT_symbol == peVar15->X_add_symbol) {\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }\n          }\nLAB_001383d2:\n          pfVar10 = fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6);\n          prVar2 = i.base_reg;\n          uVar28 = i.operands;\n          if (i.prefix[3] == '\0') {\n            if (generate_relax_relocations == 0) {\n              if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }\n            }\n            else if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;\n          }\n        }" { (if_statement "if (bVar17 == 0) {\n            if ((bVar16 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar17 = bVar16 >> 1;\n            bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n            uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2;\n            uVar28 = i.flags[uVar29];\n          }\n          else {\n            uVar28 = i.flags[uVar29];\n            if ((bVar16 & 1) != 0) goto LAB_00138302;\n            uVar27 = 8;\n          }" if (parenthesized_expression "(bVar17 == 0)" ( (binary_expression "bVar17 == 0" identifier == number_literal) )) (compound_statement "{\n            if ((bVar16 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar17 = bVar16 >> 1;\n            bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);\n            uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2;\n            uVar28 = i.flags[uVar29];\n          }" { (if_statement "if ((bVar16 & 1) != 0) {\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }" if (parenthesized_expression "((bVar16 & 1) != 0)" ( (binary_expression "(bVar16 & 1) != 0" (parenthesized_expression "(bVar16 & 1)" ( (binary_expression "bVar16 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }" { (labeled_statement "LAB_00138302:\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");" statement_identifier : comment (expression_statement "as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp");" (call_expression "as_abort("../../gas/config/tc-i386.c",0x1ec2,"output_disp")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1ec2,"output_disp")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_disp"" " string_content ") ))) ;)) })) (expression_statement "bVar17 = bVar16 >> 1;" (assignment_expression "bVar17 = bVar16 >> 1" identifier = (binary_expression "bVar16 >> 1" identifier >> number_literal)) ;) (expression_statement "bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2);" (assignment_expression "bVar16 = *(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2)" identifier = (pointer_expression "*(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2)" * (cast_expression "(byte *)((long)i.types + (uVar29 & 0xffffffff) * 8 + 2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)i.types + (uVar29 & 0xffffffff) * 8 + 2)" ( (binary_expression "(long)i.types + (uVar29 & 0xffffffff) * 8 + 2" (binary_expression "(long)i.types + (uVar29 & 0xffffffff) * 8" (cast_expression "(long)i.types" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "i.types" identifier . field_identifier)) + (binary_expression "(uVar29 & 0xffffffff) * 8" (parenthesized_expression "(uVar29 & 0xffffffff)" ( (binary_expression "uVar29 & 0xffffffff" identifier & number_literal) )) * number_literal)) + number_literal) ))))) ;) (expression_statement "uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2;" (assignment_expression "uVar27 = (-(uint)((bVar17 & 1) == 0) & 2) + 2" identifier = (binary_expression "(-(uint)((bVar17 & 1) == 0) & 2) + 2" (parenthesized_expression "(-(uint)((bVar17 & 1) == 0) & 2)" ( (binary_expression "-(uint)((bVar17 & 1) == 0) & 2" (unary_expression "-(uint)((bVar17 & 1) == 0)" - (call_expression "(uint)((bVar17 & 1) == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "((bVar17 & 1) == 0)" ( (binary_expression "(bVar17 & 1) == 0" (parenthesized_expression "(bVar17 & 1)" ( (binary_expression "bVar17 & 1" identifier & number_literal) )) == number_literal) )))) & number_literal) )) + number_literal)) ;) (expression_statement "uVar28 = i.flags[uVar29];" (assignment_expression "uVar28 = i.flags[uVar29]" identifier = (subscript_expression "i.flags[uVar29]" (field_expression "i.flags" identifier . field_identifier) [ identifier ])) ;) }) (else_clause "else {\n            uVar28 = i.flags[uVar29];\n            if ((bVar16 & 1) != 0) goto LAB_00138302;\n            uVar27 = 8;\n          }" else (compound_statement "{\n            uVar28 = i.flags[uVar29];\n            if ((bVar16 & 1) != 0) goto LAB_00138302;\n            uVar27 = 8;\n          }" { (expression_statement "uVar28 = i.flags[uVar29];" (assignment_expression "uVar28 = i.flags[uVar29]" identifier = (subscript_expression "i.flags[uVar29]" (field_expression "i.flags" identifier . field_identifier) [ identifier ])) ;) (if_statement "if ((bVar16 & 1) != 0) goto LAB_00138302;" if (parenthesized_expression "((bVar16 & 1) != 0)" ( (binary_expression "(bVar16 & 1) != 0" (parenthesized_expression "(bVar16 & 1)" ( (binary_expression "bVar16 & 1" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00138302;" goto statement_identifier ;)) (expression_statement "uVar27 = 8;" (assignment_expression "uVar27 = 8" identifier = number_literal) ;) }))) (expression_statement "local_58 = bVar16 >> 3 & 1;" (assignment_expression "local_58 = bVar16 >> 3 & 1" identifier = (binary_expression "bVar16 >> 3 & 1" (binary_expression "bVar16 >> 3" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar28 = uVar28 & 1;" (assignment_expression "uVar28 = uVar28 & 1" identifier = (binary_expression "uVar28 & 1" identifier & number_literal)) ;) (if_statement "if ((uVar28 != 0) && (i.imm_operands != 0)) {\n            uVar11 = 0;\n            cVar24 = '\0';\n            do {\n              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }\n              uVar11 = uVar11 + 1;\n            } while ((uint)uVar11 < uVar19);\n            if (cVar24 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }" if (parenthesized_expression "((uVar28 != 0) && (i.imm_operands != 0))" ( (binary_expression "(uVar28 != 0) && (i.imm_operands != 0)" (parenthesized_expression "(uVar28 != 0)" ( (binary_expression "uVar28 != 0" identifier != number_literal) )) && (parenthesized_expression "(i.imm_operands != 0)" ( (binary_expression "i.imm_operands != 0" (field_expression "i.imm_operands" identifier . field_identifier) != number_literal) ))) )) (compound_statement "{\n            uVar11 = 0;\n            cVar24 = '\0';\n            do {\n              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }\n              uVar11 = uVar11 + 1;\n            } while ((uint)uVar11 < uVar19);\n            if (cVar24 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }" { (expression_statement "uVar11 = 0;" (assignment_expression "uVar11 = 0" identifier = number_literal) ;) (expression_statement "cVar24 = '\0';" (assignment_expression "cVar24 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (do_statement "do {\n              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }\n              uVar11 = uVar11 + 1;\n            } while ((uint)uVar11 < uVar19);" do (compound_statement "{\n              if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }\n              uVar11 = uVar11 + 1;\n            }" { (if_statement "if ((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0) {\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }" if (parenthesized_expression "((*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0)" ( (binary_expression "(*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc) != 0" (parenthesized_expression "(*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc)" ( (binary_expression "*(byte *)((long)i.types + uVar11 * 8 + 1) & 0xfc" (pointer_expression "*(byte *)((long)i.types + uVar11 * 8 + 1)" * (cast_expression "(byte *)((long)i.types + uVar11 * 8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)i.types + uVar11 * 8 + 1)" ( (binary_expression "(long)i.types + uVar11 * 8 + 1" (binary_expression "(long)i.types + uVar11 * 8" (cast_expression "(long)i.types" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "i.types" identifier . field_identifier)) + (binary_expression "uVar11 * 8" identifier * number_literal)) + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n                if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);\n                if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }\n                peVar15->X_add_number = peVar15->X_add_number - lVar20;\n              }" { (if_statement "if (cVar24 != '\0') {\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }" if (parenthesized_expression "(cVar24 != '\0')" ( (binary_expression "cVar24 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n                  as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }" { comment (expression_statement "as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp");" (call_expression "as_abort("../../gas/config/tc-i386.c",0x1ed1,"output_disp")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1ed1,"output_disp")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_disp"" " string_content ") ))) ;) })) (expression_statement "bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1);" (assignment_expression "bVar16 = *(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1)" identifier = (pointer_expression "*(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1)" * (cast_expression "(byte *)((long)i.types + (uVar11 & 0xffffffff) * 8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)i.types + (uVar11 & 0xffffffff) * 8 + 1)" ( (binary_expression "(long)i.types + (uVar11 & 0xffffffff) * 8 + 1" (binary_expression "(long)i.types + (uVar11 & 0xffffffff) * 8" (cast_expression "(long)i.types" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "i.types" identifier . field_identifier)) + (binary_expression "(uVar11 & 0xffffffff) * 8" (parenthesized_expression "(uVar11 & 0xffffffff)" ( (binary_expression "uVar11 & 0xffffffff" identifier & number_literal) )) * number_literal)) + number_literal) ))))) ;) (if_statement "if ((char)bVar16 < '\0') {\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }\n                else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }" if (parenthesized_expression "((char)bVar16 < '\0')" ( (binary_expression "(char)bVar16 < '\0'" (cast_expression "(char)bVar16" ( (type_descriptor "char" primitive_type) ) identifier) < (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  lVar20 = 8;\n                  cVar24 = '\b';\n                }" { (expression_statement "lVar20 = 8;" (assignment_expression "lVar20 = 8" identifier = number_literal) ;) (expression_statement "cVar24 = '\b';" (assignment_expression "cVar24 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) }) (else_clause "else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }" else (if_statement "if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }" if (parenthesized_expression "(((bVar16 & 4) == 0) && ((bVar16 & 8) == 0))" ( (binary_expression "((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)" (parenthesized_expression "((bVar16 & 4) == 0)" ( (binary_expression "(bVar16 & 4) == 0" (parenthesized_expression "(bVar16 & 4)" ( (binary_expression "bVar16 & 4" identifier & number_literal) )) == number_literal) )) && (parenthesized_expression "((bVar16 & 8) == 0)" ( (binary_expression "(bVar16 & 8) == 0" (parenthesized_expression "(bVar16 & 8)" ( (binary_expression "bVar16 & 8" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n                  bVar16 = bVar16 >> 4 & 1;\n                  lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n                  cVar24 = (-(bVar16 == 0) & 2U) + 2;\n                }" { (expression_statement "bVar16 = bVar16 >> 4 & 1;" (assignment_expression "bVar16 = bVar16 >> 4 & 1" identifier = (binary_expression "bVar16 >> 4 & 1" (binary_expression "bVar16 >> 4" identifier >> number_literal) & number_literal)) ;) (expression_statement "lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;" (assignment_expression "lVar20 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2" identifier = (binary_expression "(ulong)(-(uint)(bVar16 == 0) & 2) + 2" (call_expression "(ulong)(-(uint)(bVar16 == 0) & 2)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(-(uint)(bVar16 == 0) & 2)" ( (binary_expression "-(uint)(bVar16 == 0) & 2" (unary_expression "-(uint)(bVar16 == 0)" - (call_expression "(uint)(bVar16 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar16 == 0)" ( (binary_expression "bVar16 == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal)) ;) (expression_statement "cVar24 = (-(bVar16 == 0) & 2U) + 2;" (assignment_expression "cVar24 = (-(bVar16 == 0) & 2U) + 2" identifier = (binary_expression "(-(bVar16 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar16 == 0) & 2U)" ( (binary_expression "-(bVar16 == 0) & 2U" (unary_expression "-(bVar16 == 0)" - (parenthesized_expression "(bVar16 == 0)" ( (binary_expression "bVar16 == 0" identifier == number_literal) ))) & number_literal) )) + number_literal)) ;) }) (else_clause "else {\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }" else (compound_statement "{\n                  lVar20 = 1;\n                  cVar24 = '\x01';\n                }" { (expression_statement "lVar20 = 1;" (assignment_expression "lVar20 = 1" identifier = number_literal) ;) (expression_statement "cVar24 = '\x01';" (assignment_expression "cVar24 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) }))))) (expression_statement "peVar15->X_add_number = peVar15->X_add_number - lVar20;" (assignment_expression "peVar15->X_add_number = peVar15->X_add_number - lVar20" (field_expression "peVar15->X_add_number" identifier -> field_identifier) = (binary_expression "peVar15->X_add_number - lVar20" (field_expression "peVar15->X_add_number" identifier -> field_identifier) - identifier)) ;) })) (expression_statement "uVar11 = uVar11 + 1;" (assignment_expression "uVar11 = uVar11 + 1" identifier = (binary_expression "uVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "((uint)uVar11 < uVar19)" ( (binary_expression "(uint)uVar11 < uVar19" (cast_expression "(uint)uVar11" ( (type_descriptor "uint" type_identifier) ) identifier) < identifier) )) ;) (if_statement "if (cVar24 == '\0') {\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }" if (parenthesized_expression "(cVar24 == '\0')" ( (binary_expression "cVar24 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n              as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }" { comment (expression_statement "as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp");" (call_expression "as_abort("../../gas/config/tc-i386.c",0x1ed6,"output_disp")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1ed6,"output_disp")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_disp"" " string_content ") ))) ;) })) })) (expression_statement "pcVar9 = frag_more((long)(int)uVar27);" (assignment_expression "pcVar9 = frag_more((long)(int)uVar27)" identifier = (call_expression "frag_more((long)(int)uVar27)" identifier (argument_list "((long)(int)uVar27)" ( (cast_expression "(long)(int)uVar27" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (cast_expression "(int)uVar27" ( (type_descriptor "int" primitive_type) ) identifier)) )))) ;) (expression_statement "bVar6 = reloc(uVar27,uVar28,local_58,i.reloc[uVar29]);" (assignment_expression "bVar6 = reloc(uVar27,uVar28,local_58,i.reloc[uVar29])" identifier = (call_expression "reloc(uVar27,uVar28,local_58,i.reloc[uVar29])" identifier (argument_list "(uVar27,uVar28,local_58,i.reloc[uVar29])" ( identifier , identifier , identifier , (subscript_expression "i.reloc[uVar29]" (field_expression "i.reloc" identifier . field_identifier) [ identifier ]) )))) ;) (expression_statement "pfVar26 = frag_now;" (assignment_expression "pfVar26 = frag_now" identifier = identifier) ;) (if_statement "if (GOT_symbol == (symbolS *)0x0) {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            if (GOT_symbol == peVar15->X_add_symbol) {\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }\n          }" if (parenthesized_expression "(GOT_symbol == (symbolS *)0x0)" ( (binary_expression "GOT_symbol == (symbolS *)0x0" identifier == (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n          }" { (expression_statement "peVar15 = i.op[uVar29].disps;" (assignment_expression "peVar15 = i.op[uVar29].disps" identifier = (field_expression "i.op[uVar29].disps" (subscript_expression "i.op[uVar29]" (field_expression "i.op" identifier . field_identifier) [ identifier ]) . field_identifier)) ;) (expression_statement "lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;" (assignment_expression "lVar20 = (long)pcVar9 - (long)frag_now->fr_literal" identifier = (binary_expression "(long)pcVar9 - (long)frag_now->fr_literal" (cast_expression "(long)pcVar9" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)frag_now->fr_literal" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "frag_now->fr_literal" identifier -> field_identifier)))) ;) }) (else_clause "else {\n            peVar15 = i.op[uVar29].disps;\n            if (GOT_symbol == peVar15->X_add_symbol) {\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }\n          }" else (compound_statement "{\n            peVar15 = i.op[uVar29].disps;\n            if (GOT_symbol == peVar15->X_add_symbol) {\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }\n          }" { (expression_statement "peVar15 = i.op[uVar29].disps;" (assignment_expression "peVar15 = i.op[uVar29].disps" identifier = (field_expression "i.op[uVar29].disps" (subscript_expression "i.op[uVar29]" (field_expression "i.op" identifier . field_identifier) [ identifier ]) . field_identifier)) ;) (if_statement "if (GOT_symbol == peVar15->X_add_symbol) {\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }" if (parenthesized_expression "(GOT_symbol == peVar15->X_add_symbol)" ( (binary_expression "GOT_symbol == peVar15->X_add_symbol" identifier == (field_expression "peVar15->X_add_symbol" identifier -> field_identifier)) )) (compound_statement "{\n              if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }\n              pfVar26 = frag_now;\n              if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }\n              if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }\n            }" { (if_statement "if ((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)) {\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }\n              else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }" if (parenthesized_expression "((bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S))" ( (binary_expression "(bVar6 == BFD_RELOC_32) || (bVar6 == BFD_RELOC_X86_64_32S)" (parenthesized_expression "(bVar6 == BFD_RELOC_32)" ( (binary_expression "bVar6 == BFD_RELOC_32" identifier == identifier) )) || (parenthesized_expression "(bVar6 == BFD_RELOC_X86_64_32S)" ( (binary_expression "bVar6 == BFD_RELOC_X86_64_32S" identifier == identifier) ))) )) (compound_statement "{\nLAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n              }" { (labeled_statement "LAB_001386f0:\n                if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }" statement_identifier : (if_statement "if (peVar15->field_0x18 != '\x03') {\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }" if (parenthesized_expression "(peVar15->field_0x18 != '\x03')" ( (binary_expression "peVar15->field_0x18 != '\x03'" (field_expression "peVar15->field_0x18" identifier -> field_identifier) != (char_literal "'\x03'" ' escape_sequence ')) )) (compound_statement "{\n                  if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }" { (if_statement "if (peVar15->field_0x18 == '\x13') {\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }" if (parenthesized_expression "(peVar15->field_0x18 == '\x13')" ( (binary_expression "peVar15->field_0x18 == '\x13'" (field_expression "peVar15->field_0x18" identifier -> field_identifier) == (char_literal "'\x13'" ' escape_sequence ')) )) (compound_statement "{\n                    peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                    peVar15 = i.op[uVar29].disps;\n                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;\n                  }" { (expression_statement "peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);" (assignment_expression "peVar14 = symbol_get_value_expression(peVar15->X_op_symbol)" identifier = (call_expression "symbol_get_value_expression(peVar15->X_op_symbol)" identifier (argument_list "(peVar15->X_op_symbol)" ( (field_expression "peVar15->X_op_symbol" identifier -> field_identifier) )))) ;) (expression_statement "peVar15 = i.op[uVar29].disps;" (assignment_expression "peVar15 = i.op[uVar29].disps" identifier = (field_expression "i.op[uVar29].disps" (subscript_expression "i.op[uVar29]" (field_expression "i.op" identifier . field_identifier) [ identifier ]) . field_identifier)) ;) (if_statement "if (peVar14->field_0x18 == '\x14') goto LAB_00138730;" if (parenthesized_expression "(peVar14->field_0x18 == '\x14')" ( (binary_expression "peVar14->field_0x18 == '\x14'" (field_expression "peVar14->field_0x18" identifier -> field_identifier) == (char_literal "'\x14'" ' escape_sequence ')) )) (goto_statement "goto LAB_00138730;" goto statement_identifier ;)) })) (goto_statement "goto LAB_001385b1;" goto statement_identifier ;) }))) (labeled_statement "LAB_00138730:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;" statement_identifier : (expression_statement "lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;" (assignment_expression "lVar20 = (long)pcVar9 - (long)frag_now->fr_literal" identifier = (binary_expression "(long)pcVar9 - (long)frag_now->fr_literal" (cast_expression "(long)pcVar9" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)frag_now->fr_literal" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "frag_now->fr_literal" identifier -> field_identifier)))) ;)) }) (else_clause "else {\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }" else (compound_statement "{\n                if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                pfVar26 = frag_now;\n                if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;\n              }" { (if_statement "if (bVar6 == BFD_RELOC_64) {\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }" if (parenthesized_expression "(bVar6 == BFD_RELOC_64)" ( (binary_expression "bVar6 == BFD_RELOC_64" identifier == identifier) )) (compound_statement "{\n                  if (object_64bit == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }" { (if_statement "if (object_64bit == 0) goto LAB_001383be;" if (parenthesized_expression "(object_64bit == 0)" ( (binary_expression "object_64bit == 0" identifier == number_literal) )) (goto_statement "goto LAB_001383be;" goto statement_identifier ;)) (goto_statement "goto LAB_001386f0;" goto statement_identifier ;) })) (labeled_statement "LAB_001385b1:\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;" statement_identifier : (expression_statement "lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;" (assignment_expression "lVar20 = (long)pcVar9 - (long)frag_now->fr_literal" identifier = (binary_expression "(long)pcVar9 - (long)frag_now->fr_literal" (cast_expression "(long)pcVar9" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)frag_now->fr_literal" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "frag_now->fr_literal" identifier -> field_identifier)))) ;)) (expression_statement "pfVar26 = frag_now;" (assignment_expression "pfVar26 = frag_now" identifier = identifier) ;) (if_statement "if (bVar6 != BFD_RELOC_32_PCREL) goto LAB_001383d2;" if (parenthesized_expression "(bVar6 != BFD_RELOC_32_PCREL)" ( (binary_expression "bVar6 != BFD_RELOC_32_PCREL" identifier != identifier) )) (goto_statement "goto LAB_001383d2;" goto statement_identifier ;)) }))) (expression_statement "pfVar26 = frag_now;" (assignment_expression "pfVar26 = frag_now" identifier = identifier) ;) (if_statement "if (pfVar3 == frag_now) {\n                lVar18 = -aVar7;\n              }\n              else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }" if (parenthesized_expression "(pfVar3 == frag_now)" ( (binary_expression "pfVar3 == frag_now" identifier == identifier) )) (compound_statement "{\n                lVar18 = -aVar7;\n              }" { (expression_statement "lVar18 = -aVar7;" (assignment_expression "lVar18 = -aVar7" identifier = (unary_expression "-aVar7" - identifier)) ;) }) (else_clause "else {\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }" else (compound_statement "{\n                lVar18 = pfVar3->fr_fix - aVar7;\n                for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }\n              }" { (expression_statement "lVar18 = pfVar3->fr_fix - aVar7;" (assignment_expression "lVar18 = pfVar3->fr_fix - aVar7" identifier = (binary_expression "pfVar3->fr_fix - aVar7" (field_expression "pfVar3->fr_fix" identifier -> field_identifier) - identifier)) ;) (for_statement "for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (pfVar1 != frag_now));\n                    pfVar1 = pfVar1->fr_next) {\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }" for ( (assignment_expression "pfVar1 = pfVar3->fr_next" identifier = (field_expression "pfVar3->fr_next" identifier -> field_identifier)) ; (parenthesized_expression "(pfVar1 != (frag *)0x0 && (pfVar1 != frag_now))" ( (binary_expression "pfVar1 != (frag *)0x0 && (pfVar1 != frag_now)" (binary_expression "pfVar1 != (frag *)0x0" identifier != (cast_expression "(frag *)0x0" ( (type_descriptor "frag *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) && (parenthesized_expression "(pfVar1 != frag_now)" ( (binary_expression "pfVar1 != frag_now" identifier != identifier) ))) )) ; (assignment_expression "pfVar1 = pfVar1->fr_next" identifier = (field_expression "pfVar1->fr_next" identifier -> field_identifier)) ) (compound_statement "{\n                  lVar18 = lVar18 + pfVar1->fr_fix;\n                }" { (expression_statement "lVar18 = lVar18 + pfVar1->fr_fix;" (assignment_expression "lVar18 = lVar18 + pfVar1->fr_fix" identifier = (binary_expression "lVar18 + pfVar1->fr_fix" identifier + (field_expression "pfVar1->fr_fix" identifier -> field_identifier))) ;) })) }))) (if_statement "if (object_64bit == 0) {\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }\n              else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }" if (parenthesized_expression "(object_64bit == 0)" ( (binary_expression "object_64bit == 0" identifier == number_literal) )) (compound_statement "{\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                bVar6 = BFD_RELOC_386_GOTPC;\n              }" { (expression_statement "peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;" (assignment_expression "peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18" (field_expression "peVar15->X_add_number" identifier -> field_identifier) = (binary_expression "peVar15->X_add_number + lVar20 + lVar18" (binary_expression "peVar15->X_add_number + lVar20" (field_expression "peVar15->X_add_number" identifier -> field_identifier) + identifier) + identifier)) ;) (expression_statement "bVar6 = BFD_RELOC_386_GOTPC;" (assignment_expression "bVar6 = BFD_RELOC_386_GOTPC" identifier = identifier) ;) }) (else_clause "else {\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }" else (compound_statement "{\n                bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;\n              }" { (expression_statement "bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32;" (assignment_expression "bVar6 = (uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32" identifier = (binary_expression "(uint)(bVar6 == BFD_RELOC_64) * 3 + BFD_RELOC_X86_64_GOTPC32" (binary_expression "(uint)(bVar6 == BFD_RELOC_64) * 3" (call_expression "(uint)(bVar6 == BFD_RELOC_64)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar6 == BFD_RELOC_64)" ( (binary_expression "bVar6 == BFD_RELOC_64" identifier == identifier) ))) * number_literal) + identifier)) ;) }))) }) (else_clause "else {\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }" else (compound_statement "{\nLAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            }" { (labeled_statement "LAB_001383be:\n              lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;" statement_identifier : (expression_statement "lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;" (assignment_expression "lVar20 = (long)pcVar9 - (long)frag_now->fr_literal" identifier = (binary_expression "(long)pcVar9 - (long)frag_now->fr_literal" (cast_expression "(long)pcVar9" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)frag_now->fr_literal" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "frag_now->fr_literal" identifier -> field_identifier)))) ;)) }))) }))) (labeled_statement "LAB_001383d2:\n          pfVar10 = fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6);" statement_identifier : (expression_statement "pfVar10 = fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6);" (assignment_expression "pfVar10 = fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6)" identifier = (call_expression "fix_new_exp(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6)" identifier (argument_list "(pfVar26,(int)lVar20,uVar27,peVar15,uVar28,bVar6)" ( identifier , (cast_expression "(int)lVar20" ( (type_descriptor "int" primitive_type) ) identifier) , identifier , identifier , identifier , identifier )))) ;)) (expression_statement "prVar2 = i.base_reg;" (assignment_expression "prVar2 = i.base_reg" identifier = (field_expression "i.base_reg" identifier . field_identifier)) ;) (expression_statement "uVar28 = i.operands;" (assignment_expression "uVar28 = i.operands" identifier = (field_expression "i.operands" identifier . field_identifier)) ;) (if_statement "if (i.prefix[3] == '\0') {\n            if (generate_relax_relocations == 0) {\n              if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }\n            }\n            else if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;\n          }" if (parenthesized_expression "(i.prefix[3] == '\0')" ( (binary_expression "i.prefix[3] == '\0'" (subscript_expression "i.prefix[3]" (field_expression "i.prefix" identifier . field_identifier) [ number_literal ]) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            if (generate_relax_relocations == 0) {\n              if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }\n            }\n            else if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;\n          }" { (if_statement "if (generate_relax_relocations == 0) {\n              if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }\n            }\n            else if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;" if (parenthesized_expression "(generate_relax_relocations == 0)" ( (binary_expression "generate_relax_relocations == 0" identifier == number_literal) )) (compound_statement "{\n              if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }\n            }" { (if_statement "if (i.rm.mode == 0 && object_64bit == 0) {\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }" if (parenthesized_expression "(i.rm.mode == 0 && object_64bit == 0)" ( (binary_expression "i.rm.mode == 0 && object_64bit == 0" (binary_expression "i.rm.mode == 0" (field_expression "i.rm.mode" (field_expression "i.rm" identifier . field_identifier) . field_identifier) == number_literal) && (binary_expression "object_64bit == 0" identifier == number_literal)) )) (compound_statement "{\nLAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;\n              }" { (labeled_statement "LAB_00138410:\n                if (i.rm.regmem == 5) goto LAB_0013841d;" statement_identifier : (if_statement "if (i.rm.regmem == 5) goto LAB_0013841d;" if (parenthesized_expression "(i.rm.regmem == 5)" ( (binary_expression "i.rm.regmem == 5" (field_expression "i.rm.regmem" (field_expression "i.rm" identifier . field_identifier) . field_identifier) == number_literal) )) (goto_statement "goto LAB_0013841d;" goto statement_identifier ;))) })) }) (else_clause "else if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;" else (if_statement "if (i.rm.mode == 2) {\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }\n            else if (i.rm.mode == 0) goto LAB_00138410;" if (parenthesized_expression "(i.rm.mode == 2)" ( (binary_expression "i.rm.mode == 2" (field_expression "i.rm.mode" (field_expression "i.rm" identifier . field_identifier) . field_identifier) == number_literal) )) (compound_statement "{\nLAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;\n              if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }\n            }" { (labeled_statement "LAB_0013841d:\n              if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;" statement_identifier : (if_statement "if (i.operands == 1) {\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;" if (parenthesized_expression "(i.operands == 1)" ( (binary_expression "i.operands == 1" (field_expression "i.operands" identifier . field_identifier) == number_literal) )) (compound_statement "{\n                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }" { (if_statement "if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }" if (parenthesized_expression "((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0))" ( (binary_expression "(i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)" (parenthesized_expression "(i.tm.base_opcode != 0xff)" ( (binary_expression "i.tm.base_opcode != 0xff" (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier) != number_literal) )) || (parenthesized_expression "((i.rm.reg - 2 & 0xfffffffd) != 0)" ( (binary_expression "(i.rm.reg - 2 & 0xfffffffd) != 0" (parenthesized_expression "(i.rm.reg - 2 & 0xfffffffd)" ( (binary_expression "i.rm.reg - 2 & 0xfffffffd" (binary_expression "i.rm.reg - 2" (field_expression "i.rm.reg" (field_expression "i.rm" identifier . field_identifier) . field_identifier) - number_literal) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n                  if (i.imm_operands == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }" { (if_statement "if (i.imm_operands == 0) {\n                    return;\n                  }" if (parenthesized_expression "(i.imm_operands == 0)" ( (binary_expression "i.imm_operands == 0" (field_expression "i.imm_operands" identifier . field_identifier) == number_literal) )) (compound_statement "{\n                    return;\n                  }" { (return_statement "return;" return ;) })) (goto_statement "goto LAB_00137e9a;" goto statement_identifier ;) })) }) (else_clause "else if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;" else (if_statement "if ((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;" if (parenthesized_expression "((i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3))))" ( (binary_expression "(i.operands != 2) ||\n                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))" (parenthesized_expression "(i.operands != 2)" ( (binary_expression "i.operands != 2" (field_expression "i.operands" identifier . field_identifier) != number_literal) )) || (parenthesized_expression "(((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)))" ( (parenthesized_expression "((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3))" ( (binary_expression "(i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&\n                       ((i.tm.base_opcode & 199) != 3)" (parenthesized_expression "(i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85))" ( (binary_expression "i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)" (binary_expression "i.tm.base_opcode != 0x8b" (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier) != number_literal) && (parenthesized_expression "(i.tm.base_opcode != 0x85)" ( (binary_expression "i.tm.base_opcode != 0x85" (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier) != number_literal) ))) )) && (parenthesized_expression "((i.tm.base_opcode & 199) != 3)" ( (binary_expression "(i.tm.base_opcode & 199) != 3" (parenthesized_expression "(i.tm.base_opcode & 199)" ( (binary_expression "i.tm.base_opcode & 199" (field_expression "i.tm.base_opcode" (field_expression "i.tm" identifier . field_identifier) . field_identifier) & number_literal) )) != number_literal) ))) )) ))) )) (goto_statement "goto LAB_00138326;" goto statement_identifier ;))))) (if_statement "if (object_64bit == 0) {\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }\n              else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }" if (parenthesized_expression "(object_64bit == 0)" ( (binary_expression "object_64bit == 0" identifier == number_literal) )) (compound_statement "{\n                *(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;\n              }" { (expression_statement "*(byte *)pfVar10 = *(byte *)pfVar10 | 0x10;" (assignment_expression "*(byte *)pfVar10 = *(byte *)pfVar10 | 0x10" (pointer_expression "*(byte *)pfVar10" * (cast_expression "(byte *)pfVar10" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "*(byte *)pfVar10 | 0x10" (pointer_expression "*(byte *)pfVar10" * (cast_expression "(byte *)pfVar10" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) | number_literal)) ;) }) (else_clause "else {\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }" else (compound_statement "{\n                bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';\n                *(byte *)pfVar10 = bVar16;\n                if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }\n              }" { (expression_statement "bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';" (assignment_expression "bVar16 = *(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b'" identifier = (binary_expression "*(byte *)pfVar10 & 0xf7 | (i.rex != 0) * '\b'" (binary_expression "*(byte *)pfVar10 & 0xf7" (pointer_expression "*(byte *)pfVar10" * (cast_expression "(byte *)pfVar10" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) & number_literal) | (binary_expression "(i.rex != 0) * '\b'" (parenthesized_expression "(i.rex != 0)" ( (binary_expression "i.rex != 0" (field_expression "i.rex" identifier . field_identifier) != number_literal) )) * (char_literal "'\b'" ' escape_sequence ')))) ;) (expression_statement "*(byte *)pfVar10 = bVar16;" (assignment_expression "*(byte *)pfVar10 = bVar16" (pointer_expression "*(byte *)pfVar10" * (cast_expression "(byte *)pfVar10" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = identifier) ;) (if_statement "if ((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)) {\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }" if (parenthesized_expression "((prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num))" ( (binary_expression "(prVar2 != (reg_entry *)0x0) && (0xfd < prVar2->reg_num)" (parenthesized_expression "(prVar2 != (reg_entry *)0x0)" ( (binary_expression "prVar2 != (reg_entry *)0x0" identifier != (cast_expression "(reg_entry *)0x0" ( (type_descriptor "reg_entry *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(0xfd < prVar2->reg_num)" ( (binary_expression "0xfd < prVar2->reg_num" number_literal < (field_expression "prVar2->reg_num" identifier -> field_identifier)) ))) )) (compound_statement "{\n                  *(byte *)pfVar10 = bVar16 | 0x10;\n                }" { (expression_statement "*(byte *)pfVar10 = bVar16 | 0x10;" (assignment_expression "*(byte *)pfVar10 = bVar16 | 0x10" (pointer_expression "*(byte *)pfVar10" * (cast_expression "(byte *)pfVar10" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "bVar16 | 0x10" identifier | number_literal)) ;) })) }))) }) (else_clause "else if (i.rm.mode == 0) goto LAB_00138410;" else (if_statement "if (i.rm.mode == 0) goto LAB_00138410;" if (parenthesized_expression "(i.rm.mode == 0)" ( (binary_expression "i.rm.mode == 0" (field_expression "i.rm.mode" (field_expression "i.rm" identifier . field_identifier) . field_identifier) == number_literal) )) (goto_statement "goto LAB_00138410;" goto statement_identifier ;)))))) })) }))) })) (labeled_statement "LAB_00138326:\n      uVar19 = uVar28;" statement_identifier : (expression_statement "uVar19 = uVar28;" (assignment_expression "uVar19 = uVar28" identifier = identifier) ;)) (expression_statement "uVar29 = uVar29 + 1;" (assignment_expression "uVar29 = uVar29 + 1" identifier = (binary_expression "uVar29 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "((uint)uVar29 < uVar19)" ( (binary_expression "(uint)uVar29 < uVar19" (cast_expression "(uint)uVar29" ( (type_descriptor "uint" type_identifier) ) identifier) < identifier) )) ;) })) (if_statement "if ((i.imm_operands != 0) && (i.operands != 0)) {\nLAB_00137e9a:\n    uVar29 = 0;\n    do {\n      if (((i.rounding == (RC_Operation *)0x0) || ((i.rounding)->operand != (int)uVar29)) &&\n         ((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0xfc) != 0)) {\n        bVar16 = *(byte *)((long)i.types + uVar29 * 8 + 1);\n        if ((i.op[uVar29].disps)->field_0x18 == '\x02') {\n          if ((char)bVar16 < '\0') {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n            iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            sVar25 = 1;\n            iVar23 = 1;\n          }\n          vVar12 = offset_in_range((i.op[uVar29].disps)->X_add_number,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n        }\n        else {\n          if ((char)bVar16 < '\0') {\n            uVar19 = 8;\n            sVar25 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            uVar19 = 1;\n            sVar25 = 1;\n          }\n          uVar28 = 0;\n          if ((((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q')) && (uVar28 = 0, i.suffix == '\0')) {\n            uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1;\n          }\n          pcVar9 = frag_more(sVar25);\n          bVar6 = reloc(uVar19,0,uVar28,i.reloc[uVar29]);\n          if ((bVar6 - BFD_RELOC_64 < 2) || (bVar6 == BFD_RELOC_X86_64_32S)) {\n            peVar15 = i.op[uVar29].disps;\n            if ((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)) {\n              if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\nLAB_00137fa9:\n          fix_new_exp(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6);\n        }\n      }\n      uVar19 = (int)uVar29 + 1;\n      uVar29 = (ulong)uVar19;\n    } while (uVar19 < i.operands);\n  }" if (parenthesized_expression "((i.imm_operands != 0) && (i.operands != 0))" ( (binary_expression "(i.imm_operands != 0) && (i.operands != 0)" (parenthesized_expression "(i.imm_operands != 0)" ( (binary_expression "i.imm_operands != 0" (field_expression "i.imm_operands" identifier . field_identifier) != number_literal) )) && (parenthesized_expression "(i.operands != 0)" ( (binary_expression "i.operands != 0" (field_expression "i.operands" identifier . field_identifier) != number_literal) ))) )) (compound_statement "{\nLAB_00137e9a:\n    uVar29 = 0;\n    do {\n      if (((i.rounding == (RC_Operation *)0x0) || ((i.rounding)->operand != (int)uVar29)) &&\n         ((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0xfc) != 0)) {\n        bVar16 = *(byte *)((long)i.types + uVar29 * 8 + 1);\n        if ((i.op[uVar29].disps)->field_0x18 == '\x02') {\n          if ((char)bVar16 < '\0') {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n            iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            sVar25 = 1;\n            iVar23 = 1;\n          }\n          vVar12 = offset_in_range((i.op[uVar29].disps)->X_add_number,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n        }\n        else {\n          if ((char)bVar16 < '\0') {\n            uVar19 = 8;\n            sVar25 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            uVar19 = 1;\n            sVar25 = 1;\n          }\n          uVar28 = 0;\n          if ((((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q')) && (uVar28 = 0, i.suffix == '\0')) {\n            uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1;\n          }\n          pcVar9 = frag_more(sVar25);\n          bVar6 = reloc(uVar19,0,uVar28,i.reloc[uVar29]);\n          if ((bVar6 - BFD_RELOC_64 < 2) || (bVar6 == BFD_RELOC_X86_64_32S)) {\n            peVar15 = i.op[uVar29].disps;\n            if ((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)) {\n              if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\nLAB_00137fa9:\n          fix_new_exp(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6);\n        }\n      }\n      uVar19 = (int)uVar29 + 1;\n      uVar29 = (ulong)uVar19;\n    } while (uVar19 < i.operands);\n  }" { (labeled_statement "LAB_00137e9a:\n    uVar29 = 0;" statement_identifier : (expression_statement "uVar29 = 0;" (assignment_expression "uVar29 = 0" identifier = number_literal) ;)) (do_statement "do {\n      if (((i.rounding == (RC_Operation *)0x0) || ((i.rounding)->operand != (int)uVar29)) &&\n         ((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0xfc) != 0)) {\n        bVar16 = *(byte *)((long)i.types + uVar29 * 8 + 1);\n        if ((i.op[uVar29].disps)->field_0x18 == '\x02') {\n          if ((char)bVar16 < '\0') {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n            iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            sVar25 = 1;\n            iVar23 = 1;\n          }\n          vVar12 = offset_in_range((i.op[uVar29].disps)->X_add_number,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n        }\n        else {\n          if ((char)bVar16 < '\0') {\n            uVar19 = 8;\n            sVar25 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            uVar19 = 1;\n            sVar25 = 1;\n          }\n          uVar28 = 0;\n          if ((((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q')) && (uVar28 = 0, i.suffix == '\0')) {\n            uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1;\n          }\n          pcVar9 = frag_more(sVar25);\n          bVar6 = reloc(uVar19,0,uVar28,i.reloc[uVar29]);\n          if ((bVar6 - BFD_RELOC_64 < 2) || (bVar6 == BFD_RELOC_X86_64_32S)) {\n            peVar15 = i.op[uVar29].disps;\n            if ((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)) {\n              if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\nLAB_00137fa9:\n          fix_new_exp(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6);\n        }\n      }\n      uVar19 = (int)uVar29 + 1;\n      uVar29 = (ulong)uVar19;\n    } while (uVar19 < i.operands);" do (compound_statement "{\n      if (((i.rounding == (RC_Operation *)0x0) || ((i.rounding)->operand != (int)uVar29)) &&\n         ((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0xfc) != 0)) {\n        bVar16 = *(byte *)((long)i.types + uVar29 * 8 + 1);\n        if ((i.op[uVar29].disps)->field_0x18 == '\x02') {\n          if ((char)bVar16 < '\0') {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n            iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            sVar25 = 1;\n            iVar23 = 1;\n          }\n          vVar12 = offset_in_range((i.op[uVar29].disps)->X_add_number,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n        }\n        else {\n          if ((char)bVar16 < '\0') {\n            uVar19 = 8;\n            sVar25 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            uVar19 = 1;\n            sVar25 = 1;\n          }\n          uVar28 = 0;\n          if ((((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q')) && (uVar28 = 0, i.suffix == '\0')) {\n            uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1;\n          }\n          pcVar9 = frag_more(sVar25);\n          bVar6 = reloc(uVar19,0,uVar28,i.reloc[uVar29]);\n          if ((bVar6 - BFD_RELOC_64 < 2) || (bVar6 == BFD_RELOC_X86_64_32S)) {\n            peVar15 = i.op[uVar29].disps;\n            if ((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)) {\n              if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\nLAB_00137fa9:\n          fix_new_exp(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6);\n        }\n      }\n      uVar19 = (int)uVar29 + 1;\n      uVar29 = (ulong)uVar19;\n    }" { (if_statement "if (((i.rounding == (RC_Operation *)0x0) || ((i.rounding)->operand != (int)uVar29)) &&\n         ((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0xfc) != 0)) {\n        bVar16 = *(byte *)((long)i.types + uVar29 * 8 + 1);\n        if ((i.op[uVar29].disps)->field_0x18 == '\x02') {\n          if ((char)bVar16 < '\0') {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n            iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            sVar25 = 1;\n            iVar23 = 1;\n          }\n          vVar12 = offset_in_range((i.op[uVar29].disps)->X_add_number,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n        }\n        else {\n          if ((char)bVar16 < '\0') {\n            uVar19 = 8;\n            sVar25 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            uVar19 = 1;\n            sVar25 = 1;\n          }\n          uVar28 = 0;\n          if ((((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q')) && (uVar28 = 0, i.suffix == '\0')) {\n            uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1;\n          }\n          pcVar9 = frag_more(sVar25);\n          bVar6 = reloc(uVar19,0,uVar28,i.reloc[uVar29]);\n          if ((bVar6 - BFD_RELOC_64 < 2) || (bVar6 == BFD_RELOC_X86_64_32S)) {\n            peVar15 = i.op[uVar29].disps;\n            if ((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)) {\n              if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\nLAB_00137fa9:\n          fix_new_exp(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6);\n        }\n      }" if (parenthesized_expression "(((i.rounding == (RC_Operation *)0x0) || ((i.rounding)->operand != (int)uVar29)) &&\n         ((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0xfc) != 0))" ( (binary_expression "((i.rounding == (RC_Operation *)0x0) || ((i.rounding)->operand != (int)uVar29)) &&\n         ((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0xfc) != 0)" (parenthesized_expression "((i.rounding == (RC_Operation *)0x0) || ((i.rounding)->operand != (int)uVar29))" ( (binary_expression "(i.rounding == (RC_Operation *)0x0) || ((i.rounding)->operand != (int)uVar29)" (parenthesized_expression "(i.rounding == (RC_Operation *)0x0)" ( (binary_expression "i.rounding == (RC_Operation *)0x0" (field_expression "i.rounding" identifier . field_identifier) == (cast_expression "(RC_Operation *)0x0" ( (type_descriptor "RC_Operation *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "((i.rounding)->operand != (int)uVar29)" ( (binary_expression "(i.rounding)->operand != (int)uVar29" (field_expression "(i.rounding)->operand" (parenthesized_expression "(i.rounding)" ( (field_expression "i.rounding" identifier . field_identifier) )) -> field_identifier) != (cast_expression "(int)uVar29" ( (type_descriptor "int" primitive_type) ) identifier)) ))) )) && (parenthesized_expression "((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0xfc) != 0)" ( (binary_expression "(*(byte *)((long)i.types + uVar29 * 8 + 1) & 0xfc) != 0" (parenthesized_expression "(*(byte *)((long)i.types + uVar29 * 8 + 1) & 0xfc)" ( (binary_expression "*(byte *)((long)i.types + uVar29 * 8 + 1) & 0xfc" (pointer_expression "*(byte *)((long)i.types + uVar29 * 8 + 1)" * (cast_expression "(byte *)((long)i.types + uVar29 * 8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)i.types + uVar29 * 8 + 1)" ( (binary_expression "(long)i.types + uVar29 * 8 + 1" (binary_expression "(long)i.types + uVar29 * 8" (cast_expression "(long)i.types" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "i.types" identifier . field_identifier)) + (binary_expression "uVar29 * 8" identifier * number_literal)) + number_literal) )))) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n        bVar16 = *(byte *)((long)i.types + uVar29 * 8 + 1);\n        if ((i.op[uVar29].disps)->field_0x18 == '\x02') {\n          if ((char)bVar16 < '\0') {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n            iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            sVar25 = 1;\n            iVar23 = 1;\n          }\n          vVar12 = offset_in_range((i.op[uVar29].disps)->X_add_number,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n        }\n        else {\n          if ((char)bVar16 < '\0') {\n            uVar19 = 8;\n            sVar25 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            uVar19 = 1;\n            sVar25 = 1;\n          }\n          uVar28 = 0;\n          if ((((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q')) && (uVar28 = 0, i.suffix == '\0')) {\n            uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1;\n          }\n          pcVar9 = frag_more(sVar25);\n          bVar6 = reloc(uVar19,0,uVar28,i.reloc[uVar29]);\n          if ((bVar6 - BFD_RELOC_64 < 2) || (bVar6 == BFD_RELOC_X86_64_32S)) {\n            peVar15 = i.op[uVar29].disps;\n            if ((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)) {\n              if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\nLAB_00137fa9:\n          fix_new_exp(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6);\n        }\n      }" { (expression_statement "bVar16 = *(byte *)((long)i.types + uVar29 * 8 + 1);" (assignment_expression "bVar16 = *(byte *)((long)i.types + uVar29 * 8 + 1)" identifier = (pointer_expression "*(byte *)((long)i.types + uVar29 * 8 + 1)" * (cast_expression "(byte *)((long)i.types + uVar29 * 8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)i.types + uVar29 * 8 + 1)" ( (binary_expression "(long)i.types + uVar29 * 8 + 1" (binary_expression "(long)i.types + uVar29 * 8" (cast_expression "(long)i.types" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "i.types" identifier . field_identifier)) + (binary_expression "uVar29 * 8" identifier * number_literal)) + number_literal) ))))) ;) (if_statement "if ((i.op[uVar29].disps)->field_0x18 == '\x02') {\n          if ((char)bVar16 < '\0') {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n            iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            sVar25 = 1;\n            iVar23 = 1;\n          }\n          vVar12 = offset_in_range((i.op[uVar29].disps)->X_add_number,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n        }\n        else {\n          if ((char)bVar16 < '\0') {\n            uVar19 = 8;\n            sVar25 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            uVar19 = 1;\n            sVar25 = 1;\n          }\n          uVar28 = 0;\n          if ((((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q')) && (uVar28 = 0, i.suffix == '\0')) {\n            uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1;\n          }\n          pcVar9 = frag_more(sVar25);\n          bVar6 = reloc(uVar19,0,uVar28,i.reloc[uVar29]);\n          if ((bVar6 - BFD_RELOC_64 < 2) || (bVar6 == BFD_RELOC_X86_64_32S)) {\n            peVar15 = i.op[uVar29].disps;\n            if ((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)) {\n              if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\nLAB_00137fa9:\n          fix_new_exp(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6);\n        }" if (parenthesized_expression "((i.op[uVar29].disps)->field_0x18 == '\x02')" ( (binary_expression "(i.op[uVar29].disps)->field_0x18 == '\x02'" (field_expression "(i.op[uVar29].disps)->field_0x18" (parenthesized_expression "(i.op[uVar29].disps)" ( (field_expression "i.op[uVar29].disps" (subscript_expression "i.op[uVar29]" (field_expression "i.op" identifier . field_identifier) [ identifier ]) . field_identifier) )) -> field_identifier) == (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n          if ((char)bVar16 < '\0') {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n            iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            sVar25 = 1;\n            iVar23 = 1;\n          }\n          vVar12 = offset_in_range((i.op[uVar29].disps)->X_add_number,iVar23);\n          pcVar9 = frag_more(sVar25);\n          number_to_chars_littleendian(pcVar9,vVar12,iVar23);\n        }" { (if_statement "if ((char)bVar16 < '\0') {\n            sVar25 = 8;\n            iVar23 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n            iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            sVar25 = 1;\n            iVar23 = 1;\n          }" if (parenthesized_expression "((char)bVar16 < '\0')" ( (binary_expression "(char)bVar16 < '\0'" (cast_expression "(char)bVar16" ( (type_descriptor "char" primitive_type) ) identifier) < (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            sVar25 = 8;\n            iVar23 = 8;\n          }" { (expression_statement "sVar25 = 8;" (assignment_expression "sVar25 = 8" identifier = number_literal) ;) (expression_statement "iVar23 = 8;" (assignment_expression "iVar23 = 8" identifier = number_literal) ;) }) (else_clause "else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n            iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            sVar25 = 1;\n            iVar23 = 1;\n          }" else (if_statement "if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n            iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            sVar25 = 1;\n            iVar23 = 1;\n          }" if (parenthesized_expression "(((bVar16 & 4) == 0) && ((bVar16 & 8) == 0))" ( (binary_expression "((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)" (parenthesized_expression "((bVar16 & 4) == 0)" ( (binary_expression "(bVar16 & 4) == 0" (parenthesized_expression "(bVar16 & 4)" ( (binary_expression "bVar16 & 4" identifier & number_literal) )) == number_literal) )) && (parenthesized_expression "((bVar16 & 8) == 0)" ( (binary_expression "(bVar16 & 8) == 0" (parenthesized_expression "(bVar16 & 8)" ( (binary_expression "bVar16 & 8" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n            bVar16 = bVar16 >> 4 & 1;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n            iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;\n          }" { (expression_statement "bVar16 = bVar16 >> 4 & 1;" (assignment_expression "bVar16 = bVar16 >> 4 & 1" identifier = (binary_expression "bVar16 >> 4 & 1" (binary_expression "bVar16 >> 4" identifier >> number_literal) & number_literal)) ;) (expression_statement "sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;" (assignment_expression "sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2" identifier = (binary_expression "(ulong)(-(uint)(bVar16 == 0) & 2) + 2" (call_expression "(ulong)(-(uint)(bVar16 == 0) & 2)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(-(uint)(bVar16 == 0) & 2)" ( (binary_expression "-(uint)(bVar16 == 0) & 2" (unary_expression "-(uint)(bVar16 == 0)" - (call_expression "(uint)(bVar16 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar16 == 0)" ( (binary_expression "bVar16 == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal)) ;) (expression_statement "iVar23 = (-(uint)(bVar16 == 0) & 2) + 2;" (assignment_expression "iVar23 = (-(uint)(bVar16 == 0) & 2) + 2" identifier = (binary_expression "(-(uint)(bVar16 == 0) & 2) + 2" (parenthesized_expression "(-(uint)(bVar16 == 0) & 2)" ( (binary_expression "-(uint)(bVar16 == 0) & 2" (unary_expression "-(uint)(bVar16 == 0)" - (call_expression "(uint)(bVar16 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar16 == 0)" ( (binary_expression "bVar16 == 0" identifier == number_literal) )))) & number_literal) )) + number_literal)) ;) }) (else_clause "else {\n            sVar25 = 1;\n            iVar23 = 1;\n          }" else (compound_statement "{\n            sVar25 = 1;\n            iVar23 = 1;\n          }" { (expression_statement "sVar25 = 1;" (assignment_expression "sVar25 = 1" identifier = number_literal) ;) (expression_statement "iVar23 = 1;" (assignment_expression "iVar23 = 1" identifier = number_literal) ;) }))))) (expression_statement "vVar12 = offset_in_range((i.op[uVar29].disps)->X_add_number,iVar23);" (assignment_expression "vVar12 = offset_in_range((i.op[uVar29].disps)->X_add_number,iVar23)" identifier = (call_expression "offset_in_range((i.op[uVar29].disps)->X_add_number,iVar23)" identifier (argument_list "((i.op[uVar29].disps)->X_add_number,iVar23)" ( (field_expression "(i.op[uVar29].disps)->X_add_number" (parenthesized_expression "(i.op[uVar29].disps)" ( (field_expression "i.op[uVar29].disps" (subscript_expression "i.op[uVar29]" (field_expression "i.op" identifier . field_identifier) [ identifier ]) . field_identifier) )) -> field_identifier) , identifier )))) ;) (expression_statement "pcVar9 = frag_more(sVar25);" (assignment_expression "pcVar9 = frag_more(sVar25)" identifier = (call_expression "frag_more(sVar25)" identifier (argument_list "(sVar25)" ( identifier )))) ;) (expression_statement "number_to_chars_littleendian(pcVar9,vVar12,iVar23);" (call_expression "number_to_chars_littleendian(pcVar9,vVar12,iVar23)" identifier (argument_list "(pcVar9,vVar12,iVar23)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n          if ((char)bVar16 < '\0') {\n            uVar19 = 8;\n            sVar25 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            uVar19 = 1;\n            sVar25 = 1;\n          }\n          uVar28 = 0;\n          if ((((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q')) && (uVar28 = 0, i.suffix == '\0')) {\n            uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1;\n          }\n          pcVar9 = frag_more(sVar25);\n          bVar6 = reloc(uVar19,0,uVar28,i.reloc[uVar29]);\n          if ((bVar6 - BFD_RELOC_64 < 2) || (bVar6 == BFD_RELOC_X86_64_32S)) {\n            peVar15 = i.op[uVar29].disps;\n            if ((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)) {\n              if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\nLAB_00137fa9:\n          fix_new_exp(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6);\n        }" else (compound_statement "{\n          if ((char)bVar16 < '\0') {\n            uVar19 = 8;\n            sVar25 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            uVar19 = 1;\n            sVar25 = 1;\n          }\n          uVar28 = 0;\n          if ((((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q')) && (uVar28 = 0, i.suffix == '\0')) {\n            uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1;\n          }\n          pcVar9 = frag_more(sVar25);\n          bVar6 = reloc(uVar19,0,uVar28,i.reloc[uVar29]);\n          if ((bVar6 - BFD_RELOC_64 < 2) || (bVar6 == BFD_RELOC_X86_64_32S)) {\n            peVar15 = i.op[uVar29].disps;\n            if ((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)) {\n              if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\nLAB_00137fa9:\n          fix_new_exp(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6);\n        }" { (if_statement "if ((char)bVar16 < '\0') {\n            uVar19 = 8;\n            sVar25 = 8;\n          }\n          else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            uVar19 = 1;\n            sVar25 = 1;\n          }" if (parenthesized_expression "((char)bVar16 < '\0')" ( (binary_expression "(char)bVar16 < '\0'" (cast_expression "(char)bVar16" ( (type_descriptor "char" primitive_type) ) identifier) < (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            uVar19 = 8;\n            sVar25 = 8;\n          }" { (expression_statement "uVar19 = 8;" (assignment_expression "uVar19 = 8" identifier = number_literal) ;) (expression_statement "sVar25 = 8;" (assignment_expression "sVar25 = 8" identifier = number_literal) ;) }) (else_clause "else if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            uVar19 = 1;\n            sVar25 = 1;\n          }" else (if_statement "if (((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)) {\n            bVar16 = bVar16 >> 4 & 1;\n            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n          }\n          else {\n            uVar19 = 1;\n            sVar25 = 1;\n          }" if (parenthesized_expression "(((bVar16 & 4) == 0) && ((bVar16 & 8) == 0))" ( (binary_expression "((bVar16 & 4) == 0) && ((bVar16 & 8) == 0)" (parenthesized_expression "((bVar16 & 4) == 0)" ( (binary_expression "(bVar16 & 4) == 0" (parenthesized_expression "(bVar16 & 4)" ( (binary_expression "bVar16 & 4" identifier & number_literal) )) == number_literal) )) && (parenthesized_expression "((bVar16 & 8) == 0)" ( (binary_expression "(bVar16 & 8) == 0" (parenthesized_expression "(bVar16 & 8)" ( (binary_expression "bVar16 & 8" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n            bVar16 = bVar16 >> 4 & 1;\n            uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;\n            sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;\n          }" { (expression_statement "bVar16 = bVar16 >> 4 & 1;" (assignment_expression "bVar16 = bVar16 >> 4 & 1" identifier = (binary_expression "bVar16 >> 4 & 1" (binary_expression "bVar16 >> 4" identifier >> number_literal) & number_literal)) ;) (expression_statement "uVar19 = (-(uint)(bVar16 == 0) & 2) + 2;" (assignment_expression "uVar19 = (-(uint)(bVar16 == 0) & 2) + 2" identifier = (binary_expression "(-(uint)(bVar16 == 0) & 2) + 2" (parenthesized_expression "(-(uint)(bVar16 == 0) & 2)" ( (binary_expression "-(uint)(bVar16 == 0) & 2" (unary_expression "-(uint)(bVar16 == 0)" - (call_expression "(uint)(bVar16 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar16 == 0)" ( (binary_expression "bVar16 == 0" identifier == number_literal) )))) & number_literal) )) + number_literal)) ;) (expression_statement "sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2;" (assignment_expression "sVar25 = (ulong)(-(uint)(bVar16 == 0) & 2) + 2" identifier = (binary_expression "(ulong)(-(uint)(bVar16 == 0) & 2) + 2" (call_expression "(ulong)(-(uint)(bVar16 == 0) & 2)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(-(uint)(bVar16 == 0) & 2)" ( (binary_expression "-(uint)(bVar16 == 0) & 2" (unary_expression "-(uint)(bVar16 == 0)" - (call_expression "(uint)(bVar16 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar16 == 0)" ( (binary_expression "bVar16 == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal)) ;) }) (else_clause "else {\n            uVar19 = 1;\n            sVar25 = 1;\n          }" else (compound_statement "{\n            uVar19 = 1;\n            sVar25 = 1;\n          }" { (expression_statement "uVar19 = 1;" (assignment_expression "uVar19 = 1" identifier = number_literal) ;) (expression_statement "sVar25 = 1;" (assignment_expression "sVar25 = 1" identifier = number_literal) ;) }))))) (expression_statement "uVar28 = 0;" (assignment_expression "uVar28 = 0" identifier = number_literal) ;) (if_statement "if ((((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q')) && (uVar28 = 0, i.suffix == '\0')) {\n            uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1;\n          }" if (parenthesized_expression "((((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q')) && (uVar28 = 0, i.suffix == '\0'))" ( (binary_expression "(((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q')) && (uVar28 = 0, i.suffix == '\0')" (parenthesized_expression "(((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q'))" ( (binary_expression "((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0) &&\n              (uVar28 = 1, i.suffix != 'q')" (parenthesized_expression "((*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0)" ( (binary_expression "(*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40) != 0" (parenthesized_expression "(*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40)" ( (binary_expression "*(byte *)((long)i.types + uVar29 * 8 + 1) & 0x40" (pointer_expression "*(byte *)((long)i.types + uVar29 * 8 + 1)" * (cast_expression "(byte *)((long)i.types + uVar29 * 8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)i.types + uVar29 * 8 + 1)" ( (binary_expression "(long)i.types + uVar29 * 8 + 1" (binary_expression "(long)i.types + uVar29 * 8" (cast_expression "(long)i.types" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "i.types" identifier . field_identifier)) + (binary_expression "uVar29 * 8" identifier * number_literal)) + number_literal) )))) & number_literal) )) != number_literal) )) && (parenthesized_expression "(uVar28 = 1, i.suffix != 'q')" ( (comma_expression "uVar28 = 1, i.suffix != 'q'" (assignment_expression "uVar28 = 1" identifier = number_literal) , (binary_expression "i.suffix != 'q'" (field_expression "i.suffix" identifier . field_identifier) != (char_literal "'q'" ' character '))) ))) )) && (parenthesized_expression "(uVar28 = 0, i.suffix == '\0')" ( (comma_expression "uVar28 = 0, i.suffix == '\0'" (assignment_expression "uVar28 = 0" identifier = number_literal) , (binary_expression "i.suffix == '\0'" (field_expression "i.suffix" identifier . field_identifier) == (char_literal "'\0'" ' escape_sequence '))) ))) )) (compound_statement "{\n            uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1;\n          }" { (expression_statement "uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1;" (assignment_expression "uVar28 = (byte)i.tm.opcode_modifier._2_1_ >> 3 & 1" identifier = (binary_expression "(byte)i.tm.opcode_modifier._2_1_ >> 3 & 1" (binary_expression "(byte)i.tm.opcode_modifier._2_1_ >> 3" (cast_expression "(byte)i.tm.opcode_modifier._2_1_" ( (type_descriptor "byte" type_identifier) ) (field_expression "i.tm.opcode_modifier._2_1_" (field_expression "i.tm.opcode_modifier" (field_expression "i.tm" identifier . field_identifier) . field_identifier) . field_identifier)) >> number_literal) & number_literal)) ;) })) (expression_statement "pcVar9 = frag_more(sVar25);" (assignment_expression "pcVar9 = frag_more(sVar25)" identifier = (call_expression "frag_more(sVar25)" identifier (argument_list "(sVar25)" ( identifier )))) ;) (expression_statement "bVar6 = reloc(uVar19,0,uVar28,i.reloc[uVar29]);" (assignment_expression "bVar6 = reloc(uVar19,0,uVar28,i.reloc[uVar29])" identifier = (call_expression "reloc(uVar19,0,uVar28,i.reloc[uVar29])" identifier (argument_list "(uVar19,0,uVar28,i.reloc[uVar29])" ( identifier , number_literal , identifier , (subscript_expression "i.reloc[uVar29]" (field_expression "i.reloc" identifier . field_identifier) [ identifier ]) )))) ;) (if_statement "if ((bVar6 - BFD_RELOC_64 < 2) || (bVar6 == BFD_RELOC_X86_64_32S)) {\n            peVar15 = i.op[uVar29].disps;\n            if ((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)) {\n              if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }\n          else {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }" if (parenthesized_expression "((bVar6 - BFD_RELOC_64 < 2) || (bVar6 == BFD_RELOC_X86_64_32S))" ( (binary_expression "(bVar6 - BFD_RELOC_64 < 2) || (bVar6 == BFD_RELOC_X86_64_32S)" (parenthesized_expression "(bVar6 - BFD_RELOC_64 < 2)" ( (binary_expression "bVar6 - BFD_RELOC_64 < 2" (binary_expression "bVar6 - BFD_RELOC_64" identifier - identifier) < number_literal) )) || (parenthesized_expression "(bVar6 == BFD_RELOC_X86_64_32S)" ( (binary_expression "bVar6 == BFD_RELOC_X86_64_32S" identifier == identifier) ))) )) (compound_statement "{\n            peVar15 = i.op[uVar29].disps;\n            if ((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)) {\n              if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }" { (expression_statement "peVar15 = i.op[uVar29].disps;" (assignment_expression "peVar15 = i.op[uVar29].disps" identifier = (field_expression "i.op[uVar29].disps" (subscript_expression "i.op[uVar29]" (field_expression "i.op" identifier . field_identifier) [ identifier ]) . field_identifier)) ;) (if_statement "if ((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)) {\n              if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }\n            }" if (parenthesized_expression "((GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol))" ( (binary_expression "(GOT_symbol != (symbolS *)0x0) && (GOT_symbol == peVar15->X_add_symbol)" (parenthesized_expression "(GOT_symbol != (symbolS *)0x0)" ( (binary_expression "GOT_symbol != (symbolS *)0x0" identifier != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(GOT_symbol == peVar15->X_add_symbol)" ( (binary_expression "GOT_symbol == peVar15->X_add_symbol" identifier == (field_expression "peVar15->X_add_symbol" identifier -> field_identifier)) ))) )) (compound_statement "{\n              if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }\n            }" { (if_statement "if (peVar15->field_0x18 == '\x03') {\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }" if (parenthesized_expression "(peVar15->field_0x18 == '\x03')" ( (binary_expression "peVar15->field_0x18 == '\x03'" (field_expression "peVar15->field_0x18" identifier -> field_identifier) == (char_literal "'\x03'" ' escape_sequence ')) )) (compound_statement "{\nLAB_00138a92:\n                pfVar26 = frag_now;\n                lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n                if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }\n                if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }\n                peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;\n                goto LAB_00137fa9;\n              }" { (labeled_statement "LAB_00138a92:\n                pfVar26 = frag_now;" statement_identifier : (expression_statement "pfVar26 = frag_now;" (assignment_expression "pfVar26 = frag_now" identifier = identifier) ;)) (expression_statement "lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;" (assignment_expression "lVar20 = (long)pcVar9 - (long)frag_now->fr_literal" identifier = (binary_expression "(long)pcVar9 - (long)frag_now->fr_literal" (cast_expression "(long)pcVar9" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)frag_now->fr_literal" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "frag_now->fr_literal" identifier -> field_identifier)))) ;) (if_statement "if (pfVar3 == frag_now) {\n                  lVar18 = -aVar7;\n                }\n                else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }" if (parenthesized_expression "(pfVar3 == frag_now)" ( (binary_expression "pfVar3 == frag_now" identifier == identifier) )) (compound_statement "{\n                  lVar18 = -aVar7;\n                }" { (expression_statement "lVar18 = -aVar7;" (assignment_expression "lVar18 = -aVar7" identifier = (unary_expression "-aVar7" - identifier)) ;) }) (else_clause "else {\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }" else (compound_statement "{\n                  lVar18 = pfVar3->fr_fix - aVar7;\n                  for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }\n                }" { (expression_statement "lVar18 = pfVar3->fr_fix - aVar7;" (assignment_expression "lVar18 = pfVar3->fr_fix - aVar7" identifier = (binary_expression "pfVar3->fr_fix - aVar7" (field_expression "pfVar3->fr_fix" identifier -> field_identifier) - identifier)) ;) (for_statement "for (pfVar1 = pfVar3->fr_next; (pfVar1 != (frag *)0x0 && (frag_now != pfVar1));\n                      pfVar1 = pfVar1->fr_next) {\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }" for ( (assignment_expression "pfVar1 = pfVar3->fr_next" identifier = (field_expression "pfVar3->fr_next" identifier -> field_identifier)) ; (parenthesized_expression "(pfVar1 != (frag *)0x0 && (frag_now != pfVar1))" ( (binary_expression "pfVar1 != (frag *)0x0 && (frag_now != pfVar1)" (binary_expression "pfVar1 != (frag *)0x0" identifier != (cast_expression "(frag *)0x0" ( (type_descriptor "frag *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) && (parenthesized_expression "(frag_now != pfVar1)" ( (binary_expression "frag_now != pfVar1" identifier != identifier) ))) )) ; (assignment_expression "pfVar1 = pfVar1->fr_next" identifier = (field_expression "pfVar1->fr_next" identifier -> field_identifier)) ) (compound_statement "{\n                    lVar18 = lVar18 + pfVar1->fr_fix;\n                  }" { (expression_statement "lVar18 = lVar18 + pfVar1->fr_fix;" (assignment_expression "lVar18 = lVar18 + pfVar1->fr_fix" identifier = (binary_expression "lVar18 + pfVar1->fr_fix" identifier + (field_expression "pfVar1->fr_fix" identifier -> field_identifier))) ;) })) }))) (if_statement "if (object_64bit == 0) {\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }\n                else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }" if (parenthesized_expression "(object_64bit == 0)" ( (binary_expression "object_64bit == 0" identifier == number_literal) )) (compound_statement "{\n                  bVar6 = BFD_RELOC_386_GOTPC;\n                }" { (expression_statement "bVar6 = BFD_RELOC_386_GOTPC;" (assignment_expression "bVar6 = BFD_RELOC_386_GOTPC" identifier = identifier) ;) }) (else_clause "else if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }" else (if_statement "if (uVar19 == 4) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }\n                else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }" if (parenthesized_expression "(uVar19 == 4)" ( (binary_expression "uVar19 == 4" identifier == number_literal) )) (compound_statement "{\n                  bVar6 = BFD_RELOC_X86_64_GOTPC32;\n                }" { (expression_statement "bVar6 = BFD_RELOC_X86_64_GOTPC32;" (assignment_expression "bVar6 = BFD_RELOC_X86_64_GOTPC32" identifier = identifier) ;) }) (else_clause "else if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }" else (if_statement "if (uVar19 == 8) {\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }" if (parenthesized_expression "(uVar19 == 8)" ( (binary_expression "uVar19 == 8" identifier == number_literal) )) (compound_statement "{\n                  bVar6 = BFD_RELOC_X86_64_GOTPC64;\n                }" { (expression_statement "bVar6 = BFD_RELOC_X86_64_GOTPC64;" (assignment_expression "bVar6 = BFD_RELOC_X86_64_GOTPC64" identifier = identifier) ;) })))))) (expression_statement "peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18;" (assignment_expression "peVar15->X_add_number = peVar15->X_add_number + lVar20 + lVar18" (field_expression "peVar15->X_add_number" identifier -> field_identifier) = (binary_expression "peVar15->X_add_number + lVar20 + lVar18" (binary_expression "peVar15->X_add_number + lVar20" (field_expression "peVar15->X_add_number" identifier -> field_identifier) + identifier) + identifier)) ;) (goto_statement "goto LAB_00137fa9;" goto statement_identifier ;) })) (if_statement "if (peVar15->field_0x18 == '\x13') {\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }" if (parenthesized_expression "(peVar15->field_0x18 == '\x13')" ( (binary_expression "peVar15->field_0x18 == '\x13'" (field_expression "peVar15->field_0x18" identifier -> field_identifier) == (char_literal "'\x13'" ' escape_sequence ')) )) (compound_statement "{\n                peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);\n                peVar15 = i.op[uVar29].disps;\n                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;\n              }" { (expression_statement "peVar14 = symbol_get_value_expression(peVar15->X_op_symbol);" (assignment_expression "peVar14 = symbol_get_value_expression(peVar15->X_op_symbol)" identifier = (call_expression "symbol_get_value_expression(peVar15->X_op_symbol)" identifier (argument_list "(peVar15->X_op_symbol)" ( (field_expression "peVar15->X_op_symbol" identifier -> field_identifier) )))) ;) (expression_statement "peVar15 = i.op[uVar29].disps;" (assignment_expression "peVar15 = i.op[uVar29].disps" identifier = (field_expression "i.op[uVar29].disps" (subscript_expression "i.op[uVar29]" (field_expression "i.op" identifier . field_identifier) [ identifier ]) . field_identifier)) ;) (if_statement "if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;" if (parenthesized_expression "(peVar14->field_0x18 == '\x14')" ( (binary_expression "peVar14->field_0x18 == '\x14'" (field_expression "peVar14->field_0x18" identifier -> field_identifier) == (char_literal "'\x14'" ' escape_sequence ')) )) (goto_statement "goto LAB_00138a92;" goto statement_identifier ;)) })) })) (expression_statement "lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;" (assignment_expression "lVar20 = (long)pcVar9 - (long)frag_now->fr_literal" identifier = (binary_expression "(long)pcVar9 - (long)frag_now->fr_literal" (cast_expression "(long)pcVar9" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)frag_now->fr_literal" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "frag_now->fr_literal" identifier -> field_identifier)))) ;) (expression_statement "pfVar26 = frag_now;" (assignment_expression "pfVar26 = frag_now" identifier = identifier) ;) }) (else_clause "else {\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }" else (compound_statement "{\n            peVar15 = i.op[uVar29].disps;\n            lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;\n            pfVar26 = frag_now;\n          }" { (expression_statement "peVar15 = i.op[uVar29].disps;" (assignment_expression "peVar15 = i.op[uVar29].disps" identifier = (field_expression "i.op[uVar29].disps" (subscript_expression "i.op[uVar29]" (field_expression "i.op" identifier . field_identifier) [ identifier ]) . field_identifier)) ;) (expression_statement "lVar20 = (long)pcVar9 - (long)frag_now->fr_literal;" (assignment_expression "lVar20 = (long)pcVar9 - (long)frag_now->fr_literal" identifier = (binary_expression "(long)pcVar9 - (long)frag_now->fr_literal" (cast_expression "(long)pcVar9" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (cast_expression "(long)frag_now->fr_literal" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (field_expression "frag_now->fr_literal" identifier -> field_identifier)))) ;) (expression_statement "pfVar26 = frag_now;" (assignment_expression "pfVar26 = frag_now" identifier = identifier) ;) }))) (labeled_statement "LAB_00137fa9:\n          fix_new_exp(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6);" statement_identifier : (expression_statement "fix_new_exp(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6);" (call_expression "fix_new_exp(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6)" identifier (argument_list "(pfVar26,(int)lVar20,uVar19,peVar15,0,bVar6)" ( identifier , (cast_expression "(int)lVar20" ( (type_descriptor "int" primitive_type) ) identifier) , identifier , identifier , number_literal , identifier ))) ;)) }))) })) (expression_statement "uVar19 = (int)uVar29 + 1;" (assignment_expression "uVar19 = (int)uVar29 + 1" identifier = (binary_expression "(int)uVar29 + 1" (cast_expression "(int)uVar29" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "uVar29 = (ulong)uVar19;" (assignment_expression "uVar29 = (ulong)uVar19" identifier = (cast_expression "(ulong)uVar19" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) }) while (parenthesized_expression "(uVar19 < i.operands)" ( (binary_expression "uVar19 < i.operands" identifier < (field_expression "i.operands" identifier . field_identifier)) )) ;) })) (return_statement "return;" return ;) })))
(translation_unit "void FUN_001379a0(void)\n\n{\n  long lVar1;\n  byte bVar2;\n  byte bVar3;\n  int iVar4;\n  undefined4 uVar5;\n  long lVar6;\n  undefined1 *puVar7;\n  byte *pbVar8;\n  ulong uVar9;\n  undefined1 *puVar10;\n  undefined8 uVar11;\n  undefined8 uVar12;\n  byte *pbVar13;\n  long *plVar14;\n  byte bVar15;\n  long lVar16;\n  long lVar17;\n  long lVar18;\n  char cVar19;\n  int iVar20;\n  uint uVar21;\n  uint uVar22;\n  long lVar23;\n  char *pcVar24;\n  char cVar25;\n  long lVar26;\n  char cVar27;\n  ulong uVar28;\n  bool bVar29;\n  ulong uVar30;\n  \n  FUN_0010e9f0(0);\n  lVar1 = DAT_001e4648;\n  lVar6 = FUN_001171d0();\n  iVar4 = DAT_001e3c9c;\n  if ((DAT_001e3be8 & 0x20) != 0) {\n    bVar15 = (DAT_001e3d40 == 2) * '\x02';\n    if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }\n    cVar25 = DAT_001e3ce7 != '\0';\n    cVar27 = cVar19;\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }\n    cVar19 = cVar27;\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    FUN_00116e70(cVar25 + '\x06');\n    pbVar8 = (byte *)FUN_00116fb0(cVar19);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }\n    bVar2 = (byte)DAT_001e3bcc;\n    *pbVar8 = bVar2;\n    bVar3 = bVar15;\n    if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }\n    if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }\n    FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);\n    return;\n  }\n  if ((DAT_001e3be8 & 0xc0) != 0) {\n    if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }\nLAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);\n    puVar10 = puVar7;\n    if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }\n    *puVar10 = (char)DAT_001e3bcc;\n    if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }\n    uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);\n    pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);\n    if (iVar20 != 1) {\n      return;\n    }\n    *pbVar8 = *pbVar8 | 0x80;\n    return;\n  }\n  if ((DAT_001e3be9 & 1) != 0) {\n    if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }\n    uVar21 = (uint)(DAT_001e3ce7 != '\0');\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }\n    iVar4 = (-(uint)!bVar29 & 2) + 2;\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    pbVar13 = pbVar8 + 1;\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }\n    *pbVar8 = (byte)DAT_001e3bcc;\n    if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }\n    uVar11 = DAT_001e3bc0;\n    if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }\n    uVar11 = DAT_001e3c60[2];\n    uVar12 = 2;\n    pbVar13 = pbVar13 + iVar4;\nLAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);\n    return;\n  }\n  if ((DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae)) {\n    if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }\n  }\n  else {\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }\n  if ((_DAT_001e3bec & 0x7000600) != 0) {\n    lVar23 = 0;\n    do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);\n    if (DAT_001e3cfc != 0) {\n                    \n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    lVar23 = FUN_00116fb0(DAT_001e3d14);\n    if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }\n    goto LAB_00137e10;\n  }\n  if (DAT_001e3bd4 != 1) {\n    if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }\n    if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }\n  }\n  if ((((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0)) {\n    FUN_00131f90(0x40);\n  }\n  pcVar24 = &DAT_001e3ce4;\n  do {\n    while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }\n    FUN_00117220();\n    pcVar24 = pcVar24 + 1;\n  } while (pcVar24 != &DAT_001e3ceb);\nLAB_00137e10:\n  if (DAT_001e3bd4 == 1) {\n    FUN_00117220(DAT_001e3bcc);\n  }\n  else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }\n  if ((((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))\n     ) {\n    FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);\n  }\n  if (DAT_001e3c2c != 0) {\n    if (DAT_001e3c24 == 0) {\n      return;\n    }\n    uVar28 = 0;\n    uVar21 = DAT_001e3c24;\n    do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);\n  }\n  if ((DAT_001e3c34 != 0) && (DAT_001e3c24 != 0)) {\nLAB_00137e9a:\n    uVar28 = 0;\n    do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);\n  }\n  return;\n}\n\n" (function_definition "void FUN_001379a0(void)\n\n{\n  long lVar1;\n  byte bVar2;\n  byte bVar3;\n  int iVar4;\n  undefined4 uVar5;\n  long lVar6;\n  undefined1 *puVar7;\n  byte *pbVar8;\n  ulong uVar9;\n  undefined1 *puVar10;\n  undefined8 uVar11;\n  undefined8 uVar12;\n  byte *pbVar13;\n  long *plVar14;\n  byte bVar15;\n  long lVar16;\n  long lVar17;\n  long lVar18;\n  char cVar19;\n  int iVar20;\n  uint uVar21;\n  uint uVar22;\n  long lVar23;\n  char *pcVar24;\n  char cVar25;\n  long lVar26;\n  char cVar27;\n  ulong uVar28;\n  bool bVar29;\n  ulong uVar30;\n  \n  FUN_0010e9f0(0);\n  lVar1 = DAT_001e4648;\n  lVar6 = FUN_001171d0();\n  iVar4 = DAT_001e3c9c;\n  if ((DAT_001e3be8 & 0x20) != 0) {\n    bVar15 = (DAT_001e3d40 == 2) * '\x02';\n    if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }\n    cVar25 = DAT_001e3ce7 != '\0';\n    cVar27 = cVar19;\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }\n    cVar19 = cVar27;\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    FUN_00116e70(cVar25 + '\x06');\n    pbVar8 = (byte *)FUN_00116fb0(cVar19);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }\n    bVar2 = (byte)DAT_001e3bcc;\n    *pbVar8 = bVar2;\n    bVar3 = bVar15;\n    if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }\n    if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }\n    FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);\n    return;\n  }\n  if ((DAT_001e3be8 & 0xc0) != 0) {\n    if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }\nLAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);\n    puVar10 = puVar7;\n    if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }\n    *puVar10 = (char)DAT_001e3bcc;\n    if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }\n    uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);\n    pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);\n    if (iVar20 != 1) {\n      return;\n    }\n    *pbVar8 = *pbVar8 | 0x80;\n    return;\n  }\n  if ((DAT_001e3be9 & 1) != 0) {\n    if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }\n    uVar21 = (uint)(DAT_001e3ce7 != '\0');\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }\n    iVar4 = (-(uint)!bVar29 & 2) + 2;\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    pbVar13 = pbVar8 + 1;\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }\n    *pbVar8 = (byte)DAT_001e3bcc;\n    if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }\n    uVar11 = DAT_001e3bc0;\n    if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }\n    uVar11 = DAT_001e3c60[2];\n    uVar12 = 2;\n    pbVar13 = pbVar13 + iVar4;\nLAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);\n    return;\n  }\n  if ((DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae)) {\n    if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }\n  }\n  else {\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }\n  if ((_DAT_001e3bec & 0x7000600) != 0) {\n    lVar23 = 0;\n    do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);\n    if (DAT_001e3cfc != 0) {\n                    \n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    lVar23 = FUN_00116fb0(DAT_001e3d14);\n    if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }\n    goto LAB_00137e10;\n  }\n  if (DAT_001e3bd4 != 1) {\n    if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }\n    if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }\n  }\n  if ((((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0)) {\n    FUN_00131f90(0x40);\n  }\n  pcVar24 = &DAT_001e3ce4;\n  do {\n    while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }\n    FUN_00117220();\n    pcVar24 = pcVar24 + 1;\n  } while (pcVar24 != &DAT_001e3ceb);\nLAB_00137e10:\n  if (DAT_001e3bd4 == 1) {\n    FUN_00117220(DAT_001e3bcc);\n  }\n  else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }\n  if ((((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))\n     ) {\n    FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);\n  }\n  if (DAT_001e3c2c != 0) {\n    if (DAT_001e3c24 == 0) {\n      return;\n    }\n    uVar28 = 0;\n    uVar21 = DAT_001e3c24;\n    do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);\n  }\n  if ((DAT_001e3c34 != 0) && (DAT_001e3c24 != 0)) {\nLAB_00137e9a:\n    uVar28 = 0;\n    do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);\n  }\n  return;\n}" primitive_type (function_declarator "FUN_001379a0(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  long lVar1;\n  byte bVar2;\n  byte bVar3;\n  int iVar4;\n  undefined4 uVar5;\n  long lVar6;\n  undefined1 *puVar7;\n  byte *pbVar8;\n  ulong uVar9;\n  undefined1 *puVar10;\n  undefined8 uVar11;\n  undefined8 uVar12;\n  byte *pbVar13;\n  long *plVar14;\n  byte bVar15;\n  long lVar16;\n  long lVar17;\n  long lVar18;\n  char cVar19;\n  int iVar20;\n  uint uVar21;\n  uint uVar22;\n  long lVar23;\n  char *pcVar24;\n  char cVar25;\n  long lVar26;\n  char cVar27;\n  ulong uVar28;\n  bool bVar29;\n  ulong uVar30;\n  \n  FUN_0010e9f0(0);\n  lVar1 = DAT_001e4648;\n  lVar6 = FUN_001171d0();\n  iVar4 = DAT_001e3c9c;\n  if ((DAT_001e3be8 & 0x20) != 0) {\n    bVar15 = (DAT_001e3d40 == 2) * '\x02';\n    if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }\n    cVar25 = DAT_001e3ce7 != '\0';\n    cVar27 = cVar19;\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }\n    cVar19 = cVar27;\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    FUN_00116e70(cVar25 + '\x06');\n    pbVar8 = (byte *)FUN_00116fb0(cVar19);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }\n    bVar2 = (byte)DAT_001e3bcc;\n    *pbVar8 = bVar2;\n    bVar3 = bVar15;\n    if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }\n    if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }\n    FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);\n    return;\n  }\n  if ((DAT_001e3be8 & 0xc0) != 0) {\n    if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }\nLAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);\n    puVar10 = puVar7;\n    if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }\n    *puVar10 = (char)DAT_001e3bcc;\n    if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }\n    uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);\n    pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);\n    if (iVar20 != 1) {\n      return;\n    }\n    *pbVar8 = *pbVar8 | 0x80;\n    return;\n  }\n  if ((DAT_001e3be9 & 1) != 0) {\n    if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }\n    uVar21 = (uint)(DAT_001e3ce7 != '\0');\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }\n    iVar4 = (-(uint)!bVar29 & 2) + 2;\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    pbVar13 = pbVar8 + 1;\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }\n    *pbVar8 = (byte)DAT_001e3bcc;\n    if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }\n    uVar11 = DAT_001e3bc0;\n    if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }\n    uVar11 = DAT_001e3c60[2];\n    uVar12 = 2;\n    pbVar13 = pbVar13 + iVar4;\nLAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);\n    return;\n  }\n  if ((DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae)) {\n    if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }\n  }\n  else {\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }\n  if ((_DAT_001e3bec & 0x7000600) != 0) {\n    lVar23 = 0;\n    do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);\n    if (DAT_001e3cfc != 0) {\n                    \n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    lVar23 = FUN_00116fb0(DAT_001e3d14);\n    if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }\n    goto LAB_00137e10;\n  }\n  if (DAT_001e3bd4 != 1) {\n    if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }\n    if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }\n  }\n  if ((((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0)) {\n    FUN_00131f90(0x40);\n  }\n  pcVar24 = &DAT_001e3ce4;\n  do {\n    while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }\n    FUN_00117220();\n    pcVar24 = pcVar24 + 1;\n  } while (pcVar24 != &DAT_001e3ceb);\nLAB_00137e10:\n  if (DAT_001e3bd4 == 1) {\n    FUN_00117220(DAT_001e3bcc);\n  }\n  else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }\n  if ((((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))\n     ) {\n    FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);\n  }\n  if (DAT_001e3c2c != 0) {\n    if (DAT_001e3c24 == 0) {\n      return;\n    }\n    uVar28 = 0;\n    uVar21 = DAT_001e3c24;\n    do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);\n  }\n  if ((DAT_001e3c34 != 0) && (DAT_001e3c24 != 0)) {\nLAB_00137e9a:\n    uVar28 = 0;\n    do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);\n  }\n  return;\n}" { (declaration "long lVar1;" (sized_type_specifier "long" long) identifier ;) (declaration "byte bVar2;" type_identifier identifier ;) (declaration "byte bVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "undefined4 uVar5;" type_identifier identifier ;) (declaration "long lVar6;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined1 *puVar7;" type_identifier (pointer_declarator "*puVar7" * identifier) ;) (declaration "byte *pbVar8;" type_identifier (pointer_declarator "*pbVar8" * identifier) ;) (declaration "ulong uVar9;" type_identifier identifier ;) (declaration "undefined1 *puVar10;" type_identifier (pointer_declarator "*puVar10" * identifier) ;) (declaration "undefined8 uVar11;" type_identifier identifier ;) (declaration "undefined8 uVar12;" type_identifier identifier ;) (declaration "byte *pbVar13;" type_identifier (pointer_declarator "*pbVar13" * identifier) ;) (declaration "long *plVar14;" (sized_type_specifier "long" long) (pointer_declarator "*plVar14" * identifier) ;) (declaration "byte bVar15;" type_identifier identifier ;) (declaration "long lVar16;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar17;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar18;" (sized_type_specifier "long" long) identifier ;) (declaration "char cVar19;" primitive_type identifier ;) (declaration "int iVar20;" primitive_type identifier ;) (declaration "uint uVar21;" type_identifier identifier ;) (declaration "uint uVar22;" type_identifier identifier ;) (declaration "long lVar23;" (sized_type_specifier "long" long) identifier ;) (declaration "char *pcVar24;" primitive_type (pointer_declarator "*pcVar24" * identifier) ;) (declaration "char cVar25;" primitive_type identifier ;) (declaration "long lVar26;" (sized_type_specifier "long" long) identifier ;) (declaration "char cVar27;" primitive_type identifier ;) (declaration "ulong uVar28;" type_identifier identifier ;) (declaration "bool bVar29;" primitive_type identifier ;) (declaration "ulong uVar30;" type_identifier identifier ;) (expression_statement "FUN_0010e9f0(0);" (call_expression "FUN_0010e9f0(0)" identifier (argument_list "(0)" ( number_literal ))) ;) (expression_statement "lVar1 = DAT_001e4648;" (assignment_expression "lVar1 = DAT_001e4648" identifier = identifier) ;) (expression_statement "lVar6 = FUN_001171d0();" (assignment_expression "lVar6 = FUN_001171d0()" identifier = (call_expression "FUN_001171d0()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar4 = DAT_001e3c9c;" (assignment_expression "iVar4 = DAT_001e3c9c" identifier = identifier) ;) (if_statement "if ((DAT_001e3be8 & 0x20) != 0) {\n    bVar15 = (DAT_001e3d40 == 2) * '\x02';\n    if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }\n    cVar25 = DAT_001e3ce7 != '\0';\n    cVar27 = cVar19;\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }\n    cVar19 = cVar27;\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    FUN_00116e70(cVar25 + '\x06');\n    pbVar8 = (byte *)FUN_00116fb0(cVar19);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }\n    bVar2 = (byte)DAT_001e3bcc;\n    *pbVar8 = bVar2;\n    bVar3 = bVar15;\n    if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }\n    if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }\n    FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);\n    return;\n  }" if (parenthesized_expression "((DAT_001e3be8 & 0x20) != 0)" ( (binary_expression "(DAT_001e3be8 & 0x20) != 0" (parenthesized_expression "(DAT_001e3be8 & 0x20)" ( (binary_expression "DAT_001e3be8 & 0x20" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n    bVar15 = (DAT_001e3d40 == 2) * '\x02';\n    if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }\n    cVar25 = DAT_001e3ce7 != '\0';\n    cVar27 = cVar19;\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }\n    cVar19 = cVar27;\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    FUN_00116e70(cVar25 + '\x06');\n    pbVar8 = (byte *)FUN_00116fb0(cVar19);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }\n    bVar2 = (byte)DAT_001e3bcc;\n    *pbVar8 = bVar2;\n    bVar3 = bVar15;\n    if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }\n    if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }\n    FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);\n    return;\n  }" { (expression_statement "bVar15 = (DAT_001e3d40 == 2) * '\x02';" (assignment_expression "bVar15 = (DAT_001e3d40 == 2) * '\x02'" identifier = (binary_expression "(DAT_001e3d40 == 2) * '\x02'" (parenthesized_expression "(DAT_001e3d40 == 2)" ( (binary_expression "DAT_001e3d40 == 2" identifier == number_literal) )) * (char_literal "'\x02'" ' escape_sequence '))) ;) (if_statement "if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }" if (parenthesized_expression "(DAT_001e3ce7 != '\0')" ( (binary_expression "DAT_001e3ce7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }" { (expression_statement "cVar19 = '\x02';" (assignment_expression "cVar19 = '\x02'" identifier = (char_literal "'\x02'" ' escape_sequence ')) ;) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) (expression_statement "bVar29 = DAT_001e3b14 != 1;" (assignment_expression "bVar29 = DAT_001e3b14 != 1" identifier = (binary_expression "DAT_001e3b14 != 1" identifier != number_literal)) ;) }) (else_clause "else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }" else (compound_statement "{\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }" { (expression_statement "bVar29 = DAT_001e3b14 == 1;" (assignment_expression "bVar29 = DAT_001e3b14 == 1" identifier = (binary_expression "DAT_001e3b14 == 1" identifier == number_literal)) ;) (expression_statement "cVar19 = '\x01';" (assignment_expression "cVar19 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) }))) (expression_statement "cVar25 = DAT_001e3ce7 != '\0';" (assignment_expression "cVar25 = DAT_001e3ce7 != '\0'" identifier = (binary_expression "DAT_001e3ce7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence '))) ;) (expression_statement "cVar27 = cVar19;" (assignment_expression "cVar27 = cVar19" identifier = identifier) ;) (if_statement "if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }" if (parenthesized_expression "((DAT_001e3ce5 & 0xef) == 0x2e)" ( (binary_expression "(DAT_001e3ce5 & 0xef) == 0x2e" (parenthesized_expression "(DAT_001e3ce5 & 0xef)" ( (binary_expression "DAT_001e3ce5 & 0xef" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }" { (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) (expression_statement "cVar27 = cVar19 + '\x01';" (assignment_expression "cVar27 = cVar19 + '\x01'" identifier = (binary_expression "cVar19 + '\x01'" identifier + (char_literal "'\x01'" ' escape_sequence '))) ;) (expression_statement "cVar25 = cVar19;" (assignment_expression "cVar25 = cVar19" identifier = identifier) ;) })) (expression_statement "cVar19 = cVar27;" (assignment_expression "cVar19 = cVar27" identifier = identifier) ;) (if_statement "if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }" if (parenthesized_expression "(DAT_001e3cea != 0)" ( (binary_expression "DAT_001e3cea != 0" identifier != number_literal) )) (compound_statement "{\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }" { (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) (expression_statement "cVar19 = cVar27 + '\x01';" (assignment_expression "cVar19 = cVar27 + '\x01'" identifier = (binary_expression "cVar27 + '\x01'" identifier + (char_literal "'\x01'" ' escape_sequence '))) ;) (expression_statement "cVar25 = cVar27;" (assignment_expression "cVar25 = cVar27" identifier = identifier) ;) })) (if_statement "if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" if (parenthesized_expression "(DAT_001e3ce8 != '\0')" ( (binary_expression "DAT_001e3ce8 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" { (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" identifier (argument_list "()" ( ))) ;) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) })) (if_statement "if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" if (parenthesized_expression "((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0))" ( (binary_expression "(DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)" (parenthesized_expression "(DAT_001e3ce0 != 0)" ( (binary_expression "DAT_001e3ce0 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_001e3afc == 0)" ( (binary_expression "DAT_001e3afc == 0" identifier == number_literal) ))) )) (compound_statement "{\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" { (expression_statement "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);" (assignment_expression "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5)" identifier = (call_expression "dcgettext(0,"skipping prefixes on this instruction",5)" identifier (argument_list "(0,"skipping prefixes on this instruction",5)" ( number_literal , (string_literal ""skipping prefixes on this instruction"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011d8a0(uVar11);" (call_expression "FUN_0011d8a0(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) })) (expression_statement "FUN_00116e70(cVar25 + '\x06');" (call_expression "FUN_00116e70(cVar25 + '\x06')" identifier (argument_list "(cVar25 + '\x06')" ( (binary_expression "cVar25 + '\x06'" identifier + (char_literal "'\x06'" ' escape_sequence ')) ))) ;) (expression_statement "pbVar8 = (byte *)FUN_00116fb0(cVar19);" (assignment_expression "pbVar8 = (byte *)FUN_00116fb0(cVar19)" identifier = (cast_expression "(byte *)FUN_00116fb0(cVar19)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00116fb0(cVar19)" identifier (argument_list "(cVar19)" ( identifier ))))) ;) (if_statement "if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }" if (parenthesized_expression "(DAT_001e3ce7 != '\0')" ( (binary_expression "DAT_001e3ce7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }" { (expression_statement "*pbVar8 = 0x66;" (assignment_expression "*pbVar8 = 0x66" (pointer_expression "*pbVar8" * identifier) = number_literal) ;) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" identifier = (binary_expression "pbVar8 + 1" identifier + number_literal)) ;) })) (if_statement "if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }" if (parenthesized_expression "((DAT_001e3ce5 & 0xef) == 0x2e)" ( (binary_expression "(DAT_001e3ce5 & 0xef) == 0x2e" (parenthesized_expression "(DAT_001e3ce5 & 0xef)" ( (binary_expression "DAT_001e3ce5 & 0xef" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }" { (expression_statement "*pbVar8 = DAT_001e3ce5;" (assignment_expression "*pbVar8 = DAT_001e3ce5" (pointer_expression "*pbVar8" * identifier) = identifier) ;) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" identifier = (binary_expression "pbVar8 + 1" identifier + number_literal)) ;) })) (if_statement "if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }" if (parenthesized_expression "(DAT_001e3cea != 0)" ( (binary_expression "DAT_001e3cea != 0" identifier != number_literal) )) (compound_statement "{\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }" { (expression_statement "*pbVar8 = DAT_001e3cea;" (assignment_expression "*pbVar8 = DAT_001e3cea" (pointer_expression "*pbVar8" * identifier) = identifier) ;) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" identifier = (binary_expression "pbVar8 + 1" identifier + number_literal)) ;) })) (expression_statement "bVar2 = (byte)DAT_001e3bcc;" (assignment_expression "bVar2 = (byte)DAT_001e3bcc" identifier = (cast_expression "(byte)DAT_001e3bcc" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (expression_statement "*pbVar8 = bVar2;" (assignment_expression "*pbVar8 = bVar2" (pointer_expression "*pbVar8" * identifier) = identifier) ;) (expression_statement "bVar3 = bVar15;" (assignment_expression "bVar3 = bVar15" identifier = identifier) ;) (if_statement "if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }" if (parenthesized_expression "(bVar2 != 0xeb)" ( (binary_expression "bVar2 != 0xeb" identifier != number_literal) )) (compound_statement "{\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }" { (expression_statement "bVar3 = bVar15 | 8;" (assignment_expression "bVar3 = bVar15 | 8" identifier = (binary_expression "bVar15 | 8" identifier | number_literal)) ;) (if_statement "if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }" if (parenthesized_expression "(((byte)DAT_001da770 & 4) != 0)" ( (binary_expression "((byte)DAT_001da770 & 4) != 0" (parenthesized_expression "((byte)DAT_001da770 & 4)" ( (binary_expression "(byte)DAT_001da770 & 4" (cast_expression "(byte)DAT_001da770" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n        bVar3 = bVar15 | 4;\n      }" { (expression_statement "bVar3 = bVar15 | 4;" (assignment_expression "bVar3 = bVar15 | 4" identifier = (binary_expression "bVar15 | 4" identifier | number_literal)) ;) })) })) (if_statement "if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }" if (parenthesized_expression "((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2)" ( (binary_expression "(byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2" (call_expression "(byte)(*(char *)(DAT_001e3c60 + 3) - 2U)" (parenthesized_expression "(byte)" ( identifier )) (argument_list "(*(char *)(DAT_001e3c60 + 3) - 2U)" ( (binary_expression "*(char *)(DAT_001e3c60 + 3) - 2U" (pointer_expression "*(char *)(DAT_001e3c60 + 3)" * (cast_expression "(char *)(DAT_001e3c60 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_001e3c60 + 3)" ( (binary_expression "DAT_001e3c60 + 3" identifier + number_literal) )))) - number_literal) ))) < number_literal) )) (compound_statement "{\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }" { (expression_statement "uVar11 = *DAT_001e3c60;" (assignment_expression "uVar11 = *DAT_001e3c60" identifier = (pointer_expression "*DAT_001e3c60" * identifier)) ;) (expression_statement "uVar12 = DAT_001e3c60[2];" (assignment_expression "uVar12 = DAT_001e3c60[2]" identifier = (subscript_expression "DAT_001e3c60[2]" identifier [ number_literal ])) ;) }) (else_clause "else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }" else (compound_statement "{\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }" { (expression_statement "uVar11 = FUN_00113ee0();" (assignment_expression "uVar11 = FUN_00113ee0()" identifier = (call_expression "FUN_00113ee0()" identifier (argument_list "()" ( )))) ;) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) }))) (expression_statement "FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);" (call_expression "FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8)" identifier (argument_list "(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8)" ( number_literal , number_literal , identifier , (binary_expression "bVar3 | bVar29" identifier | identifier) , identifier , identifier , identifier ))) ;) (return_statement "return;" return ;) })) (if_statement "if ((DAT_001e3be8 & 0xc0) != 0) {\n    if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }\nLAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);\n    puVar10 = puVar7;\n    if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }\n    *puVar10 = (char)DAT_001e3bcc;\n    if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }\n    uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);\n    pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);\n    if (iVar20 != 1) {\n      return;\n    }\n    *pbVar8 = *pbVar8 | 0x80;\n    return;\n  }" if (parenthesized_expression "((DAT_001e3be8 & 0xc0) != 0)" ( (binary_expression "(DAT_001e3be8 & 0xc0) != 0" (parenthesized_expression "(DAT_001e3be8 & 0xc0)" ( (binary_expression "DAT_001e3be8 & 0xc0" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n    if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }\nLAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);\n    puVar10 = puVar7;\n    if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }\n    *puVar10 = (char)DAT_001e3bcc;\n    if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }\n    uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);\n    pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);\n    if (iVar20 != 1) {\n      return;\n    }\n    *pbVar8 = *pbVar8 | 0x80;\n    return;\n  }" { (if_statement "if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }" if (parenthesized_expression "((char)DAT_001e3be8 < '\0')" ( (binary_expression "(char)DAT_001e3be8 < '\0'" (cast_expression "(char)DAT_001e3be8" ( (type_descriptor "char" primitive_type) ) identifier) < (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }" { (if_statement "if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }" if (parenthesized_expression "(DAT_001e3ce6 != '\0')" ( (binary_expression "DAT_001e3ce6 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }" { (expression_statement "FUN_00117220(0x67);" (call_expression "FUN_00117220(0x67)" identifier (argument_list "(0x67)" ( number_literal ))) ;) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) })) (expression_statement "iVar20 = 1;" (assignment_expression "iVar20 = 1" identifier = number_literal) ;) (if_statement "if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }" if (parenthesized_expression "((DAT_001e3ce5 & 0xef) == 0x2e)" ( (binary_expression "(DAT_001e3ce5 & 0xef) == 0x2e" (parenthesized_expression "(DAT_001e3ce5 & 0xef)" ( (binary_expression "DAT_001e3ce5 & 0xef" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }" { (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" identifier (argument_list "()" ( ))) ;) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) })) }) (else_clause "else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }" else (compound_statement "{\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }" { (if_statement "if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }" if (parenthesized_expression "(DAT_001e3b14 == 1)" ( (binary_expression "DAT_001e3b14 == 1" identifier == number_literal) )) (compound_statement "{\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }" { (if_statement "if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }" if (parenthesized_expression "(DAT_001e3ce7 == '\0')" ( (binary_expression "DAT_001e3ce7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }" { (expression_statement "iVar20 = 2;" (assignment_expression "iVar20 = 2" identifier = number_literal) ;) (goto_statement "goto LAB_00137acf;" goto statement_identifier ;) })) (expression_statement "FUN_00117220(0x66);" (call_expression "FUN_00117220(0x66)" identifier (argument_list "(0x66)" ( number_literal ))) ;) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) }) (else_clause "else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }" else (if_statement "if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }" if (parenthesized_expression "(DAT_001e3ce7 != '\0')" ( (binary_expression "DAT_001e3ce7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }" { (expression_statement "iVar20 = 2;" (assignment_expression "iVar20 = 2" identifier = number_literal) ;) (expression_statement "FUN_00117220(0x66);" (call_expression "FUN_00117220(0x66)" identifier (argument_list "(0x66)" ( number_literal ))) ;) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) (goto_statement "goto LAB_00137acf;" goto statement_identifier ;) })))) (expression_statement "iVar20 = 4;" (assignment_expression "iVar20 = 4" identifier = number_literal) ;) }))) (labeled_statement "LAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" statement_identifier : (if_statement "if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" if (parenthesized_expression "(DAT_001e3cea != 0)" ( (binary_expression "DAT_001e3cea != 0" identifier != number_literal) )) (compound_statement "{\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" { (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" identifier (argument_list "()" ( ))) ;) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) }))) (if_statement "if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" if (parenthesized_expression "(DAT_001e3ce8 != '\0')" ( (binary_expression "DAT_001e3ce8 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" { (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" identifier (argument_list "()" ( ))) ;) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) })) (if_statement "if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" if (parenthesized_expression "((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0))" ( (binary_expression "(DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)" (parenthesized_expression "(DAT_001e3ce0 != 0)" ( (binary_expression "DAT_001e3ce0 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_001e3afc == 0)" ( (binary_expression "DAT_001e3afc == 0" identifier == number_literal) ))) )) (compound_statement "{\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" { (expression_statement "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);" (assignment_expression "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5)" identifier = (call_expression "dcgettext(0,"skipping prefixes on this instruction",5)" identifier (argument_list "(0,"skipping prefixes on this instruction",5)" ( number_literal , (string_literal ""skipping prefixes on this instruction"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011d8a0(uVar11);" (call_expression "FUN_0011d8a0(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) })) (expression_statement "puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);" (assignment_expression "puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20)" identifier = (cast_expression "(undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00116fb0((uint)DAT_001e3bd4 + iVar20)" identifier (argument_list "((uint)DAT_001e3bd4 + iVar20)" ( (binary_expression "(uint)DAT_001e3bd4 + iVar20" (cast_expression "(uint)DAT_001e3bd4" ( (type_descriptor "uint" type_identifier) ) identifier) + identifier) ))))) ;) (expression_statement "puVar10 = puVar7;" (assignment_expression "puVar10 = puVar7" identifier = identifier) ;) (if_statement "if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }" if (parenthesized_expression "(DAT_001e3bd4 != 1)" ( (binary_expression "DAT_001e3bd4 != 1" identifier != number_literal) )) (compound_statement "{\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }" { (if_statement "if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }" if (parenthesized_expression "(DAT_001e3bd4 != 2)" ( (binary_expression "DAT_001e3bd4 != 2" identifier != number_literal) )) (compound_statement "{\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }" { (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1d62,"output_jump")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_jump"" " string_content ") ))) ;) })) (expression_statement "puVar10 = puVar7 + 1;" (assignment_expression "puVar10 = puVar7 + 1" identifier = (binary_expression "puVar7 + 1" identifier + number_literal)) ;) (expression_statement "*puVar7 = (char)(DAT_001e3bcc >> 8);" (assignment_expression "*puVar7 = (char)(DAT_001e3bcc >> 8)" (pointer_expression "*puVar7" * identifier) = (cast_expression "(char)(DAT_001e3bcc >> 8)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(DAT_001e3bcc >> 8)" ( (binary_expression "DAT_001e3bcc >> 8" identifier >> number_literal) )))) ;) })) (expression_statement "*puVar10 = (char)DAT_001e3bcc;" (assignment_expression "*puVar10 = (char)DAT_001e3bcc" (pointer_expression "*puVar10" * identifier) = (cast_expression "(char)DAT_001e3bcc" ( (type_descriptor "char" primitive_type) ) identifier)) ;) (if_statement "if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }" if (parenthesized_expression "((iVar20 == 4) && (iVar4 == 0x47))" ( (binary_expression "(iVar20 == 4) && (iVar4 == 0x47)" (parenthesized_expression "(iVar20 == 4)" ( (binary_expression "iVar20 == 4" identifier == number_literal) )) && (parenthesized_expression "(iVar4 == 0x47)" ( (binary_expression "iVar4 == 0x47" identifier == number_literal) ))) )) (compound_statement "{\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }" { (expression_statement "iVar4 = FUN_00136e70(*DAT_001e3c60);" (assignment_expression "iVar4 = FUN_00136e70(*DAT_001e3c60)" identifier = (call_expression "FUN_00136e70(*DAT_001e3c60)" identifier (argument_list "(*DAT_001e3c60)" ( (pointer_expression "*DAT_001e3c60" * identifier) )))) ;) (expression_statement "uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);" (assignment_expression "uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e)" identifier = (call_expression "FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e)" identifier (argument_list "(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e)" ( number_literal , number_literal , number_literal , (binary_expression "(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e" (parenthesized_expression "(-(uint)(iVar4 == 0) & 0xfffffec9)" ( (binary_expression "-(uint)(iVar4 == 0) & 0xfffffec9" (unary_expression "-(uint)(iVar4 == 0)" - (call_expression "(uint)(iVar4 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )))) & number_literal) )) + number_literal) )))) ;) (expression_statement "FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);" (call_expression "FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5)" identifier (argument_list "(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5)" ( identifier , (binary_expression "puVar10 + (1 - (DAT_001e4648 + 0x80))" identifier + (parenthesized_expression "(1 - (DAT_001e4648 + 0x80))" ( (binary_expression "1 - (DAT_001e4648 + 0x80)" number_literal - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) ))) ))) , number_literal , identifier , number_literal , identifier ))) ;) (return_statement "return;" return ;) })) (expression_statement "uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);" (assignment_expression "uVar5 = FUN_00134ea0(iVar20,1,1,iVar4)" identifier = (call_expression "FUN_00134ea0(iVar20,1,1,iVar4)" identifier (argument_list "(iVar20,1,1,iVar4)" ( identifier , number_literal , number_literal , identifier )))) ;) (expression_statement "pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);" (assignment_expression "pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5)" identifier = (cast_expression "(byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5)" identifier (argument_list "(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5)" ( identifier , (binary_expression "puVar10 + (1 - (DAT_001e4648 + 0x80))" identifier + (parenthesized_expression "(1 - (DAT_001e4648 + 0x80))" ( (binary_expression "1 - (DAT_001e4648 + 0x80)" number_literal - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) ))) ))) , identifier , identifier , number_literal , identifier ))))) ;) (if_statement "if (iVar20 != 1) {\n      return;\n    }" if (parenthesized_expression "(iVar20 != 1)" ( (binary_expression "iVar20 != 1" identifier != number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "*pbVar8 = *pbVar8 | 0x80;" (assignment_expression "*pbVar8 = *pbVar8 | 0x80" (pointer_expression "*pbVar8" * identifier) = (binary_expression "*pbVar8 | 0x80" (pointer_expression "*pbVar8" * identifier) | number_literal)) ;) (return_statement "return;" return ;) })) (if_statement "if ((DAT_001e3be9 & 1) != 0) {\n    if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }\n    uVar21 = (uint)(DAT_001e3ce7 != '\0');\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }\n    iVar4 = (-(uint)!bVar29 & 2) + 2;\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    pbVar13 = pbVar8 + 1;\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }\n    *pbVar8 = (byte)DAT_001e3bcc;\n    if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }\n    uVar11 = DAT_001e3bc0;\n    if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }\n    uVar11 = DAT_001e3c60[2];\n    uVar12 = 2;\n    pbVar13 = pbVar13 + iVar4;\nLAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);\n    return;\n  }" if (parenthesized_expression "((DAT_001e3be9 & 1) != 0)" ( (binary_expression "(DAT_001e3be9 & 1) != 0" (parenthesized_expression "(DAT_001e3be9 & 1)" ( (binary_expression "DAT_001e3be9 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n    if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }\n    uVar21 = (uint)(DAT_001e3ce7 != '\0');\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }\n    iVar4 = (-(uint)!bVar29 & 2) + 2;\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    pbVar13 = pbVar8 + 1;\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }\n    *pbVar8 = (byte)DAT_001e3bcc;\n    if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }\n    uVar11 = DAT_001e3bc0;\n    if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }\n    uVar11 = DAT_001e3c60[2];\n    uVar12 = 2;\n    pbVar13 = pbVar13 + iVar4;\nLAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);\n    return;\n  }" { (if_statement "if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }" if (parenthesized_expression "(DAT_001e3ce7 != '\0')" ( (binary_expression "DAT_001e3ce7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }" { (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) (expression_statement "bVar29 = DAT_001e3b14 != 1;" (assignment_expression "bVar29 = DAT_001e3b14 != 1" identifier = (binary_expression "DAT_001e3b14 != 1" identifier != number_literal)) ;) }) (else_clause "else {\n      bVar29 = DAT_001e3b14 == 1;\n    }" else (compound_statement "{\n      bVar29 = DAT_001e3b14 == 1;\n    }" { (expression_statement "bVar29 = DAT_001e3b14 == 1;" (assignment_expression "bVar29 = DAT_001e3b14 == 1" identifier = (binary_expression "DAT_001e3b14 == 1" identifier == number_literal)) ;) }))) (expression_statement "uVar21 = (uint)(DAT_001e3ce7 != '\0');" (assignment_expression "uVar21 = (uint)(DAT_001e3ce7 != '\0')" identifier = (call_expression "(uint)(DAT_001e3ce7 != '\0')" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(DAT_001e3ce7 != '\0')" ( (binary_expression "DAT_001e3ce7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )))) ;) (if_statement "if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }" if (parenthesized_expression "(DAT_001e3cea != 0)" ( (binary_expression "DAT_001e3cea != 0" identifier != number_literal) )) (compound_statement "{\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }" { (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" identifier = (binary_expression "DAT_001e3ce0 + -1" identifier + number_literal)) ;) (expression_statement "uVar21 = uVar21 + 1;" (assignment_expression "uVar21 = uVar21 + 1" identifier = (binary_expression "uVar21 + 1" identifier + number_literal)) ;) })) (expression_statement "iVar4 = (-(uint)!bVar29 & 2) + 2;" (assignment_expression "iVar4 = (-(uint)!bVar29 & 2) + 2" identifier = (binary_expression "(-(uint)!bVar29 & 2) + 2" (parenthesized_expression "(-(uint)!bVar29 & 2)" ( (binary_expression "-(uint)!bVar29 & 2" (unary_expression "-(uint)!bVar29" - (cast_expression "(uint)!bVar29" ( (type_descriptor "uint" type_identifier) ) (unary_expression "!bVar29" ! identifier))) & number_literal) )) + number_literal)) ;) (if_statement "if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" if (parenthesized_expression "((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0))" ( (binary_expression "(DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)" (parenthesized_expression "(DAT_001e3ce0 != 0)" ( (binary_expression "DAT_001e3ce0 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_001e3afc == 0)" ( (binary_expression "DAT_001e3afc == 0" identifier == number_literal) ))) )) (compound_statement "{\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" { (expression_statement "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);" (assignment_expression "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5)" identifier = (call_expression "dcgettext(0,"skipping prefixes on this instruction",5)" identifier (argument_list "(0,"skipping prefixes on this instruction",5)" ( number_literal , (string_literal ""skipping prefixes on this instruction"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011d8a0(uVar11);" (call_expression "FUN_0011d8a0(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) })) (expression_statement "pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);" (assignment_expression "pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4)" identifier = (cast_expression "(byte *)FUN_00116fb0(uVar21 + 3 + iVar4)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00116fb0(uVar21 + 3 + iVar4)" identifier (argument_list "(uVar21 + 3 + iVar4)" ( (binary_expression "uVar21 + 3 + iVar4" (binary_expression "uVar21 + 3" identifier + number_literal) + identifier) ))))) ;) (if_statement "if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }" if (parenthesized_expression "(DAT_001e3ce7 != '\0')" ( (binary_expression "DAT_001e3ce7 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }" { (expression_statement "*pbVar8 = 0x66;" (assignment_expression "*pbVar8 = 0x66" (pointer_expression "*pbVar8" * identifier) = number_literal) ;) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" identifier = (binary_expression "pbVar8 + 1" identifier + number_literal)) ;) })) (expression_statement "pbVar13 = pbVar8 + 1;" (assignment_expression "pbVar13 = pbVar8 + 1" identifier = (binary_expression "pbVar8 + 1" identifier + number_literal)) ;) (if_statement "if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }" if (parenthesized_expression "(DAT_001e3cea != 0)" ( (binary_expression "DAT_001e3cea != 0" identifier != number_literal) )) (compound_statement "{\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }" { (expression_statement "*pbVar8 = DAT_001e3cea;" (assignment_expression "*pbVar8 = DAT_001e3cea" (pointer_expression "*pbVar8" * identifier) = identifier) ;) (expression_statement "pbVar13 = pbVar8 + 2;" (assignment_expression "pbVar13 = pbVar8 + 2" identifier = (binary_expression "pbVar8 + 2" identifier + number_literal)) ;) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" identifier = (binary_expression "pbVar8 + 1" identifier + number_literal)) ;) })) (expression_statement "*pbVar8 = (byte)DAT_001e3bcc;" (assignment_expression "*pbVar8 = (byte)DAT_001e3bcc" (pointer_expression "*pbVar8" * identifier) = (cast_expression "(byte)DAT_001e3bcc" ( (type_descriptor "byte" type_identifier) ) identifier)) ;) (if_statement "if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }" if (parenthesized_expression "(*(char *)(DAT_001e3c68 + 0x18) == '\x02')" ( (binary_expression "*(char *)(DAT_001e3c68 + 0x18) == '\x02'" (pointer_expression "*(char *)(DAT_001e3c68 + 0x18)" * (cast_expression "(char *)(DAT_001e3c68 + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_001e3c68 + 0x18)" ( (binary_expression "DAT_001e3c68 + 0x18" identifier + number_literal) )))) == (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }" { (expression_statement "uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);" (assignment_expression "uVar28 = *(ulong *)(DAT_001e3c68 + 0x10)" identifier = (pointer_expression "*(ulong *)(DAT_001e3c68 + 0x10)" * (cast_expression "(ulong *)(DAT_001e3c68 + 0x10)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_001e3c68 + 0x10)" ( (binary_expression "DAT_001e3c68 + 0x10" identifier + number_literal) ))))) ;) (if_statement "if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }" if (parenthesized_expression "(((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000))" ( (binary_expression "((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)" (parenthesized_expression "((iVar4 == 2) && (0xffff < uVar28))" ( (binary_expression "(iVar4 == 2) && (0xffff < uVar28)" (parenthesized_expression "(iVar4 == 2)" ( (binary_expression "iVar4 == 2" identifier == number_literal) )) && (parenthesized_expression "(0xffff < uVar28)" ( (binary_expression "0xffff < uVar28" number_literal < identifier) ))) )) && (parenthesized_expression "(0xffff < uVar28 + 0x8000)" ( (binary_expression "0xffff < uVar28 + 0x8000" number_literal < (binary_expression "uVar28 + 0x8000" identifier + number_literal)) ))) )) (compound_statement "{\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }" { (expression_statement "uVar11 = dcgettext(0,"16-bit jump out of range",5);" (assignment_expression "uVar11 = dcgettext(0,"16-bit jump out of range",5)" identifier = (call_expression "dcgettext(0,"16-bit jump out of range",5)" identifier (argument_list "(0,"16-bit jump out of range",5)" ( number_literal , (string_literal ""16-bit jump out of range"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011da70(uVar11);" (call_expression "FUN_0011da70(uVar11)" identifier (argument_list "(uVar11)" ( identifier ))) ;) (return_statement "return;" return ;) })) (expression_statement "FUN_00131030(pbVar13,uVar28,iVar4);" (call_expression "FUN_00131030(pbVar13,uVar28,iVar4)" identifier (argument_list "(pbVar13,uVar28,iVar4)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }" else (compound_statement "{\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }" { (expression_statement "uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);" (assignment_expression "uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0)" identifier = (call_expression "FUN_00134ea0(iVar4,0,0,DAT_001e3ca0)" identifier (argument_list "(iVar4,0,0,DAT_001e3ca0)" ( identifier , number_literal , number_literal , identifier )))) ;) (expression_statement "FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);" (call_expression "FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5)" identifier (argument_list "(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5)" ( identifier , (binary_expression "(long)pbVar13 - (DAT_001e4648 + 0x80)" (cast_expression "(long)pbVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) ))) , identifier , identifier , number_literal , identifier ))) ;) }))) (expression_statement "uVar11 = DAT_001e3bc0;" (assignment_expression "uVar11 = DAT_001e3bc0" identifier = identifier) ;) (if_statement "if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }" if (parenthesized_expression "(*(char *)(DAT_001e3c60 + 3) != '\x02')" ( (binary_expression "*(char *)(DAT_001e3c60 + 3) != '\x02'" (pointer_expression "*(char *)(DAT_001e3c60 + 3)" * (cast_expression "(char *)(DAT_001e3c60 + 3)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_001e3c60 + 3)" ( (binary_expression "DAT_001e3c60 + 3" identifier + number_literal) )))) != (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }" { (expression_statement "uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);" (assignment_expression "uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5)" identifier = (call_expression "dcgettext(0,"can\'t handle non absolute segment in `%s\'",5)" identifier (argument_list "(0,"can\'t handle non absolute segment in `%s\'",5)" ( number_literal , (string_literal ""can\'t handle non absolute segment in `%s\'"" " string_content escape_sequence string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_0011da70(uVar12,uVar11);" (call_expression "FUN_0011da70(uVar12,uVar11)" identifier (argument_list "(uVar12,uVar11)" ( identifier , identifier ))) ;) })) (expression_statement "uVar11 = DAT_001e3c60[2];" (assignment_expression "uVar11 = DAT_001e3c60[2]" identifier = (subscript_expression "DAT_001e3c60[2]" identifier [ number_literal ])) ;) (expression_statement "uVar12 = 2;" (assignment_expression "uVar12 = 2" identifier = number_literal) ;) (expression_statement "pbVar13 = pbVar13 + iVar4;" (assignment_expression "pbVar13 = pbVar13 + iVar4" identifier = (binary_expression "pbVar13 + iVar4" identifier + identifier)) ;) (labeled_statement "LAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);" statement_identifier : (expression_statement "FUN_00131030(pbVar13,uVar11,uVar12);" (call_expression "FUN_00131030(pbVar13,uVar11,uVar12)" identifier (argument_list "(pbVar13,uVar11,uVar12)" ( identifier , identifier , identifier ))) ;)) (return_statement "return;" return ;) })) (if_statement "if ((DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae)) {\n    if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }\n  }\n  else {\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }" if (parenthesized_expression "((DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae))" ( (binary_expression "(DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae)" (parenthesized_expression "(DAT_001e3adc == 0)" ( (binary_expression "DAT_001e3adc == 0" identifier == number_literal) )) || (parenthesized_expression "(DAT_001e3bcc != 0xfae)" ( (binary_expression "DAT_001e3bcc != 0xfae" identifier != number_literal) ))) )) (compound_statement "{\n    if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }\n  }" { (if_statement "if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }" if (parenthesized_expression "(DAT_001e3ae0 != 0)" ( (binary_expression "DAT_001e3ae0 != 0" identifier != number_literal) )) (compound_statement "{\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }" { (if_statement "if (DAT_001e3bcc == 0xf0) {\n        return;\n      }" if (parenthesized_expression "(DAT_001e3bcc == 0xf0)" ( (binary_expression "DAT_001e3bcc == 0xf0" identifier == number_literal) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) })) (labeled_statement "LAB_00137bee:\n      DAT_001e3ce9 = 0;" statement_identifier : (expression_statement "DAT_001e3ce9 = 0;" (assignment_expression "DAT_001e3ce9 = 0" identifier = number_literal) ;)) })) }) (else_clause "else {\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }" else (compound_statement "{\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }" { (if_statement "if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }" if (parenthesized_expression "(((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0))))" ( (binary_expression "((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))" (parenthesized_expression "((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1))" ( (binary_expression "(DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)" (parenthesized_expression "(DAT_001e3c24 == 1)" ( (binary_expression "DAT_001e3c24 == 1" identifier == number_literal) )) && (parenthesized_expression "(DAT_001e3c34 == 1)" ( (binary_expression "DAT_001e3c34 == 1" identifier == number_literal) ))) )) && (parenthesized_expression "(((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))" ( (parenthesized_expression "((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0))" ( (binary_expression "(DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)" (binary_expression "(DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8" (parenthesized_expression "(DAT_001e3c60[2] & 0xffffffffffffffef)" ( (binary_expression "DAT_001e3c60[2] & 0xffffffffffffffef" (subscript_expression "DAT_001e3c60[2]" identifier [ number_literal ]) & number_literal) )) == number_literal) || (parenthesized_expression "(DAT_001e3c60[2] == 0xf0)" ( (binary_expression "DAT_001e3c60[2] == 0xf0" (subscript_expression "DAT_001e3c60[2]" identifier [ number_literal ]) == number_literal) ))) )) ))) )) (compound_statement "{\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }" { (expression_statement "pbVar13 = (byte *)FUN_00116fb0(5);" (assignment_expression "pbVar13 = (byte *)FUN_00116fb0(5)" identifier = (cast_expression "(byte *)FUN_00116fb0(5)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00116fb0(5)" identifier (argument_list "(5)" ( number_literal ))))) ;) (expression_statement "uVar12 = 5;" (assignment_expression "uVar12 = 5" identifier = number_literal) ;) (expression_statement "uVar11 = 0x240483f0;" (assignment_expression "uVar11 = 0x240483f0" identifier = number_literal) ;) (goto_statement "goto LAB_0013817e;" goto statement_identifier ;) })) (if_statement "if (DAT_001e3ae0 != 0) goto LAB_00137bee;" if (parenthesized_expression "(DAT_001e3ae0 != 0)" ( (binary_expression "DAT_001e3ae0 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00137bee;" goto statement_identifier ;)) }))) (if_statement "if ((_DAT_001e3bec & 0x7000600) != 0) {\n    lVar23 = 0;\n    do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);\n    if (DAT_001e3cfc != 0) {\n                    \n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    lVar23 = FUN_00116fb0(DAT_001e3d14);\n    if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }\n    goto LAB_00137e10;\n  }" if (parenthesized_expression "((_DAT_001e3bec & 0x7000600) != 0)" ( (binary_expression "(_DAT_001e3bec & 0x7000600) != 0" (parenthesized_expression "(_DAT_001e3bec & 0x7000600)" ( (binary_expression "_DAT_001e3bec & 0x7000600" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n    lVar23 = 0;\n    do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);\n    if (DAT_001e3cfc != 0) {\n                    \n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    lVar23 = FUN_00116fb0(DAT_001e3d14);\n    if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }\n    goto LAB_00137e10;\n  }" { (expression_statement "lVar23 = 0;" (assignment_expression "lVar23 = 0" identifier = number_literal) ;) (do_statement "do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);" do (compound_statement "{\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    }" { (if_statement "if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }" if (parenthesized_expression "((&DAT_001e3ce4)[lVar23] != '\0')" ( (binary_expression "(&DAT_001e3ce4)[lVar23] != '\0'" (subscript_expression "(&DAT_001e3ce4)[lVar23]" (parenthesized_expression "(&DAT_001e3ce4)" ( (pointer_expression "&DAT_001e3ce4" & identifier) )) [ identifier ]) != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }" { (expression_statement "uVar21 = (uint)lVar23;" (assignment_expression "uVar21 = (uint)lVar23" identifier = (cast_expression "(uint)lVar23" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (if_statement "if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }" if (parenthesized_expression "(uVar21 == 0)" ( (binary_expression "uVar21 == 0" identifier == number_literal) )) (compound_statement "{\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }" { (labeled_statement "LAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");" statement_identifier : (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1e38,"output_insn")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_insn"" " string_content ") ))) ;)) })) (if_statement "if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;" if (parenthesized_expression "(uVar21 < 3)" ( (binary_expression "uVar21 < 3" identifier < number_literal) )) (compound_statement "{\n          FUN_00117220();\n        }" { (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" identifier (argument_list "()" ( ))) ;) }) (else_clause "else if (uVar21 != 6) goto LAB_00137a7e;" else (if_statement "if (uVar21 != 6) goto LAB_00137a7e;" if (parenthesized_expression "(uVar21 != 6)" ( (binary_expression "uVar21 != 6" identifier != number_literal) )) (goto_statement "goto LAB_00137a7e;" goto statement_identifier ;)))) })) (expression_statement "lVar23 = lVar23 + 1;" (assignment_expression "lVar23 = lVar23 + 1" identifier = (binary_expression "lVar23 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(lVar23 != 7)" ( (binary_expression "lVar23 != 7" identifier != number_literal) )) ;) (if_statement "if (DAT_001e3cfc != 0) {\n                    \n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }" if (parenthesized_expression "(DAT_001e3cfc != 0)" ( (binary_expression "DAT_001e3cfc != 0" identifier != number_literal) )) (compound_statement "{\n                    \n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }" { (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1e3f,"output_insn")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_insn"" " string_content ") ))) ;) })) (expression_statement "lVar23 = FUN_00116fb0(DAT_001e3d14);" (assignment_expression "lVar23 = FUN_00116fb0(DAT_001e3d14)" identifier = (call_expression "FUN_00116fb0(DAT_001e3d14)" identifier (argument_list "(DAT_001e3d14)" ( identifier )))) ;) (if_statement "if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }" if (parenthesized_expression "(DAT_001e3d14 != 0)" ( (binary_expression "DAT_001e3d14 != 0" identifier != number_literal) )) (compound_statement "{\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }" { (expression_statement "lVar16 = 0;" (assignment_expression "lVar16 = 0" identifier = number_literal) ;) (do_statement "do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);" do (compound_statement "{\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      }" { (expression_statement "*(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];" (assignment_expression "*(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16]" (pointer_expression "*(undefined1 *)(lVar23 + lVar16)" * (cast_expression "(undefined1 *)(lVar23 + lVar16)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar23 + lVar16)" ( (binary_expression "lVar23 + lVar16" identifier + identifier) )))) = (subscript_expression "(&DAT_001e3d10)[lVar16]" (parenthesized_expression "(&DAT_001e3d10)" ( (pointer_expression "&DAT_001e3d10" & identifier) )) [ identifier ])) ;) (expression_statement "lVar16 = lVar16 + 1;" (assignment_expression "lVar16 = lVar16 + 1" identifier = (binary_expression "lVar16 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "((uint)lVar16 < DAT_001e3d14)" ( (binary_expression "(uint)lVar16 < DAT_001e3d14" (cast_expression "(uint)lVar16" ( (type_descriptor "uint" type_identifier) ) identifier) < identifier) )) ;) })) (goto_statement "goto LAB_00137e10;" goto statement_identifier ;) })) (if_statement "if (DAT_001e3bd4 != 1) {\n    if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }\n    if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }\n  }" if (parenthesized_expression "(DAT_001e3bd4 != 1)" ( (binary_expression "DAT_001e3bd4 != 1" identifier != number_literal) )) (compound_statement "{\n    if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }\n    if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }\n  }" { (if_statement "if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }" if (parenthesized_expression "(DAT_001e3bd4 == 0)" ( (binary_expression "DAT_001e3bd4 == 0" identifier == number_literal) )) (compound_statement "{\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }" { (expression_statement "uVar11 = dcgettext(0,"pseudo prefix without instruction",5);" (assignment_expression "uVar11 = dcgettext(0,"pseudo prefix without instruction",5)" identifier = (call_expression "dcgettext(0,"pseudo prefix without instruction",5)" identifier (argument_list "(0,"pseudo prefix without instruction",5)" ( number_literal , (string_literal ""pseudo prefix without instruction"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);" (call_expression "FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11)" identifier (argument_list "(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11)" ( (pointer_expression "*(undefined8 *)(lVar1 + 0x40)" * (cast_expression "(undefined8 *)(lVar1 + 0x40)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar1 + 0x40)" ( (binary_expression "lVar1 + 0x40" identifier + number_literal) )))) , (pointer_expression "*(undefined4 *)(lVar1 + 0x48)" * (cast_expression "(undefined4 *)(lVar1 + 0x48)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar1 + 0x48)" ( (binary_expression "lVar1 + 0x48" identifier + number_literal) )))) , identifier ))) ;) (return_statement "return;" return ;) })) (if_statement "if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }" if (parenthesized_expression "(DAT_001e3bd4 == 2)" ( (binary_expression "DAT_001e3bd4 == 2" identifier == number_literal) )) (compound_statement "{\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }" { (if_statement "if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }" if (parenthesized_expression "((DAT_001e3bcc & 0xff0000) != 0)" ( (binary_expression "(DAT_001e3bcc & 0xff0000) != 0" (parenthesized_expression "(DAT_001e3bcc & 0xff0000)" ( (binary_expression "DAT_001e3bcc & 0xff0000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }" { (expression_statement "uVar21 = DAT_001e3bcc >> 0x10 & 0xff;" (assignment_expression "uVar21 = DAT_001e3bcc >> 0x10 & 0xff" identifier = (binary_expression "DAT_001e3bcc >> 0x10 & 0xff" (binary_expression "DAT_001e3bcc >> 0x10" identifier >> number_literal) & number_literal)) ;) (if_statement "if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;" if (parenthesized_expression "((DAT_001e3bda & 0x10) != 0)" ( (binary_expression "(DAT_001e3bda & 0x10) != 0" (parenthesized_expression "(DAT_001e3bda & 0x10)" ( (binary_expression "DAT_001e3bda & 0x10" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00137dbf;" goto statement_identifier ;)) (labeled_statement "LAB_00137dd0:\n        FUN_00131f90();" statement_identifier : (expression_statement "FUN_00131f90();" (call_expression "FUN_00131f90()" identifier (argument_list "()" ( ))) ;)) })) }) (else_clause "else {\n      if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }" else (compound_statement "{\n      if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }" { (if_statement "if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }" if (parenthesized_expression "(DAT_001e3bd4 != 3)" ( (binary_expression "DAT_001e3bd4 != 3" identifier != number_literal) )) (compound_statement "{\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }" { (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1e15,"output_insn")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_insn"" " string_content ") ))) ;) })) (if_statement "if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }" if (parenthesized_expression "((DAT_001e3bcc & 0xff000000) != 0)" ( (binary_expression "(DAT_001e3bcc & 0xff000000) != 0" (parenthesized_expression "(DAT_001e3bcc & 0xff000000)" ( (binary_expression "DAT_001e3bcc & 0xff000000" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }" { (expression_statement "uVar21 = DAT_001e3bcc >> 0x18;" (assignment_expression "uVar21 = DAT_001e3bcc >> 0x18" identifier = (binary_expression "DAT_001e3bcc >> 0x18" identifier >> number_literal)) ;) (labeled_statement "LAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;" statement_identifier : (if_statement "if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;" if (parenthesized_expression "((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd))" ( (binary_expression "(uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)" (parenthesized_expression "(uVar21 != 0xf3)" ( (binary_expression "uVar21 != 0xf3" identifier != number_literal) )) || (parenthesized_expression "(DAT_001e3ce8 != -0xd)" ( (binary_expression "DAT_001e3ce8 != -0xd" identifier != number_literal) ))) )) (goto_statement "goto LAB_00137dd0;" goto statement_identifier ;))) })) }))) })) (if_statement "if ((((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0)) {\n    FUN_00131f90(0x40);\n  }" if (parenthesized_expression "((((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0))" ( (binary_expression "(((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0)" (parenthesized_expression "(((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b))" ( (binary_expression "((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)" (parenthesized_expression "((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2))" ( (binary_expression "(DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)" (parenthesized_expression "(DAT_001e3b04 == 2)" ( (binary_expression "DAT_001e3b04 == 2" identifier == number_literal) )) && (parenthesized_expression "(DAT_001e3c24 == 2)" ( (binary_expression "DAT_001e3c24 == 2" identifier == number_literal) ))) )) && (parenthesized_expression "(DAT_001e3c9c == 0x18b)" ( (binary_expression "DAT_001e3c9c == 0x18b" identifier == number_literal) ))) )) && (parenthesized_expression "(DAT_001e3cea == 0)" ( (binary_expression "DAT_001e3cea == 0" identifier == number_literal) ))) )) (compound_statement "{\n    FUN_00131f90(0x40);\n  }" { (expression_statement "FUN_00131f90(0x40);" (call_expression "FUN_00131f90(0x40)" identifier (argument_list "(0x40)" ( number_literal ))) ;) })) (expression_statement "pcVar24 = &DAT_001e3ce4;" (assignment_expression "pcVar24 = &DAT_001e3ce4" identifier = (pointer_expression "&DAT_001e3ce4" & identifier)) ;) (do_statement "do {\n    while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }\n    FUN_00117220();\n    pcVar24 = pcVar24 + 1;\n  } while (pcVar24 != &DAT_001e3ceb);" do (compound_statement "{\n    while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }\n    FUN_00117220();\n    pcVar24 = pcVar24 + 1;\n  }" { (while_statement "while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }" while (parenthesized_expression "(*pcVar24 == '\0')" ( (binary_expression "*pcVar24 == '\0'" (pointer_expression "*pcVar24" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }" { (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" identifier = (binary_expression "pcVar24 + 1" identifier + number_literal)) ;) (if_statement "if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;" if (parenthesized_expression "(pcVar24 == &DAT_001e3ceb)" ( (binary_expression "pcVar24 == &DAT_001e3ceb" identifier == (pointer_expression "&DAT_001e3ceb" & identifier)) )) (goto_statement "goto LAB_00137e10;" goto statement_identifier ;)) })) (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" identifier (argument_list "()" ( ))) ;) (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" identifier = (binary_expression "pcVar24 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(pcVar24 != &DAT_001e3ceb)" ( (binary_expression "pcVar24 != &DAT_001e3ceb" identifier != (pointer_expression "&DAT_001e3ceb" & identifier)) )) ;) (labeled_statement "LAB_00137e10:\n  if (DAT_001e3bd4 == 1) {\n    FUN_00117220(DAT_001e3bcc);\n  }\n  else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }" statement_identifier : (if_statement "if (DAT_001e3bd4 == 1) {\n    FUN_00117220(DAT_001e3bcc);\n  }\n  else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }" if (parenthesized_expression "(DAT_001e3bd4 == 1)" ( (binary_expression "DAT_001e3bd4 == 1" identifier == number_literal) )) (compound_statement "{\n    FUN_00117220(DAT_001e3bcc);\n  }" { (expression_statement "FUN_00117220(DAT_001e3bcc);" (call_expression "FUN_00117220(DAT_001e3bcc)" identifier (argument_list "(DAT_001e3bcc)" ( identifier ))) ;) }) (else_clause "else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }" else (compound_statement "{\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }" { (if_statement "if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }" if (parenthesized_expression "(DAT_001e3bd4 == 3)" ( (binary_expression "DAT_001e3bd4 == 3" identifier == number_literal) )) (compound_statement "{\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }" { (expression_statement "puVar7 = (undefined1 *)FUN_00116fb0(3);" (assignment_expression "puVar7 = (undefined1 *)FUN_00116fb0(3)" identifier = (cast_expression "(undefined1 *)FUN_00116fb0(3)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00116fb0(3)" identifier (argument_list "(3)" ( number_literal ))))) ;) (expression_statement "puVar10 = puVar7 + 1;" (assignment_expression "puVar10 = puVar7 + 1" identifier = (binary_expression "puVar7 + 1" identifier + number_literal)) ;) (expression_statement "*puVar7 = (char)(DAT_001e3bcc >> 0x10);" (assignment_expression "*puVar7 = (char)(DAT_001e3bcc >> 0x10)" (pointer_expression "*puVar7" * identifier) = (cast_expression "(char)(DAT_001e3bcc >> 0x10)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(DAT_001e3bcc >> 0x10)" ( (binary_expression "DAT_001e3bcc >> 0x10" identifier >> number_literal) )))) ;) }) (else_clause "else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }" else (if_statement "if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }" if (parenthesized_expression "(DAT_001e3bd4 == 4)" ( (binary_expression "DAT_001e3bd4 == 4" identifier == number_literal) )) (compound_statement "{\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }" { (expression_statement "puVar7 = (undefined1 *)FUN_00116fb0(4);" (assignment_expression "puVar7 = (undefined1 *)FUN_00116fb0(4)" identifier = (cast_expression "(undefined1 *)FUN_00116fb0(4)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00116fb0(4)" identifier (argument_list "(4)" ( number_literal ))))) ;) (expression_statement "*puVar7 = (char)(DAT_001e3bcc >> 0x18);" (assignment_expression "*puVar7 = (char)(DAT_001e3bcc >> 0x18)" (pointer_expression "*puVar7" * identifier) = (cast_expression "(char)(DAT_001e3bcc >> 0x18)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(DAT_001e3bcc >> 0x18)" ( (binary_expression "DAT_001e3bcc >> 0x18" identifier >> number_literal) )))) ;) (expression_statement "puVar10 = puVar7 + 2;" (assignment_expression "puVar10 = puVar7 + 2" identifier = (binary_expression "puVar7 + 2" identifier + number_literal)) ;) (expression_statement "puVar7[1] = (char)(DAT_001e3bcc >> 0x10);" (assignment_expression "puVar7[1] = (char)(DAT_001e3bcc >> 0x10)" (subscript_expression "puVar7[1]" identifier [ number_literal ]) = (cast_expression "(char)(DAT_001e3bcc >> 0x10)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(DAT_001e3bcc >> 0x10)" ( (binary_expression "DAT_001e3bcc >> 0x10" identifier >> number_literal) )))) ;) }) (else_clause "else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }" else (compound_statement "{\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }" { (if_statement "if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }" if (parenthesized_expression "(DAT_001e3bd4 != 2)" ( (binary_expression "DAT_001e3bd4 != 2" identifier != number_literal) )) (compound_statement "{\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }" { (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1e5c,"output_insn")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_insn"" " string_content ") ))) ;) })) (expression_statement "puVar10 = (undefined1 *)FUN_00116fb0(2);" (assignment_expression "puVar10 = (undefined1 *)FUN_00116fb0(2)" identifier = (cast_expression "(undefined1 *)FUN_00116fb0(2)" ( (type_descriptor "undefined1 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00116fb0(2)" identifier (argument_list "(2)" ( number_literal ))))) ;) }))))) (expression_statement "*puVar10 = (char)(DAT_001e3bcc >> 8);" (assignment_expression "*puVar10 = (char)(DAT_001e3bcc >> 8)" (pointer_expression "*puVar10" * identifier) = (cast_expression "(char)(DAT_001e3bcc >> 8)" ( (type_descriptor "char" primitive_type) ) (parenthesized_expression "(DAT_001e3bcc >> 8)" ( (binary_expression "DAT_001e3bcc >> 8" identifier >> number_literal) )))) ;) (expression_statement "puVar10[1] = (char)DAT_001e3bcc;" (assignment_expression "puVar10[1] = (char)DAT_001e3bcc" (subscript_expression "puVar10[1]" identifier [ number_literal ]) = (cast_expression "(char)DAT_001e3bcc" ( (type_descriptor "char" primitive_type) ) identifier)) ;) })))) (if_statement "if ((((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))\n     ) {\n    FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);\n  }" if (parenthesized_expression "((((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))\n     )" ( (binary_expression "(((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))" (parenthesized_expression "(((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4))" ( (binary_expression "((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)" (parenthesized_expression "((DAT_001e3be8 & 8) != 0)" ( (binary_expression "(DAT_001e3be8 & 8) != 0" (parenthesized_expression "(DAT_001e3be8 & 8)" ( (binary_expression "DAT_001e3be8 & 8" identifier & number_literal) )) != number_literal) )) && (parenthesized_expression "(FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)" ( (comma_expression "FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4" (call_expression "FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec)" identifier (argument_list "(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec)" ( (binary_expression "DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec" (binary_expression "DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6" (binary_expression "DAT_001e3cf0 * 8" identifier * number_literal) | (binary_expression "DAT_001e3cf4 << 6" identifier << number_literal)) | identifier) ))) , (binary_expression "DAT_001e3cec == 4" identifier == number_literal)) ))) )) && (parenthesized_expression "((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))" ( (parenthesized_expression "(DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0))))" ( (binary_expression "DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))" (binary_expression "DAT_001e3cf4 != 3" identifier != number_literal) && (parenthesized_expression "((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))" ( (parenthesized_expression "(DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0))" ( (binary_expression "DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)" (binary_expression "DAT_001e3cb0 == 0" identifier == number_literal) || (parenthesized_expression "((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)" ( (binary_expression "(*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0" (parenthesized_expression "(*(byte *)(DAT_001e3cb0 + 0xb) & 0x40)" ( (binary_expression "*(byte *)(DAT_001e3cb0 + 0xb) & 0x40" (pointer_expression "*(byte *)(DAT_001e3cb0 + 0xb)" * (cast_expression "(byte *)(DAT_001e3cb0 + 0xb)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_001e3cb0 + 0xb)" ( (binary_expression "DAT_001e3cb0 + 0xb" identifier + number_literal) )))) & number_literal) )) == number_literal) ))) )) ))) )) ))) )) (compound_statement "{\n    FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);\n  }" { (expression_statement "FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);" (call_expression "FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00)" identifier (argument_list "(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00)" ( (binary_expression "DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00" (binary_expression "DAT_001e3d04 * 8 | DAT_001e3d08 << 6" (binary_expression "DAT_001e3d04 * 8" identifier * number_literal) | (binary_expression "DAT_001e3d08 << 6" identifier << number_literal)) | identifier) ))) ;) })) (if_statement "if (DAT_001e3c2c != 0) {\n    if (DAT_001e3c24 == 0) {\n      return;\n    }\n    uVar28 = 0;\n    uVar21 = DAT_001e3c24;\n    do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);\n  }" if (parenthesized_expression "(DAT_001e3c2c != 0)" ( (binary_expression "DAT_001e3c2c != 0" identifier != number_literal) )) (compound_statement "{\n    if (DAT_001e3c24 == 0) {\n      return;\n    }\n    uVar28 = 0;\n    uVar21 = DAT_001e3c24;\n    do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);\n  }" { (if_statement "if (DAT_001e3c24 == 0) {\n      return;\n    }" if (parenthesized_expression "(DAT_001e3c24 == 0)" ( (binary_expression "DAT_001e3c24 == 0" identifier == number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "uVar28 = 0;" (assignment_expression "uVar28 = 0" identifier = number_literal) ;) (expression_statement "uVar21 = DAT_001e3c24;" (assignment_expression "uVar21 = DAT_001e3c24" identifier = identifier) ;) (do_statement "do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);" do (compound_statement "{\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    }" { (expression_statement "uVar22 = DAT_001e3c24;" (assignment_expression "uVar22 = DAT_001e3c24" identifier = identifier) ;) (if_statement "if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }" if (parenthesized_expression "((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0)" ( (binary_expression "(*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0" (parenthesized_expression "(*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f)" ( (binary_expression "*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f" (pointer_expression "*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2)" * (cast_expression "(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&DAT_001e3c38 + uVar28 * 8 + 2)" ( (binary_expression "(long)&DAT_001e3c38 + uVar28 * 8 + 2" (binary_expression "(long)&DAT_001e3c38 + uVar28 * 8" (cast_expression "(long)&DAT_001e3c38" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&DAT_001e3c38" & identifier)) + (binary_expression "uVar28 * 8" identifier * number_literal)) + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }" { (expression_statement "lVar23 = (long)(&DAT_001e3c60)[uVar28];" (assignment_expression "lVar23 = (long)(&DAT_001e3c60)[uVar28]" identifier = (cast_expression "(long)(&DAT_001e3c60)[uVar28]" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" ( (pointer_expression "&DAT_001e3c60" & identifier) )) [ identifier ]))) ;) (expression_statement "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);" (assignment_expression "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" identifier = (pointer_expression "*(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" * (cast_expression "(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" ( (binary_expression "(long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2" (binary_expression "(long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8" (cast_expression "(long)&DAT_001e3c38" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&DAT_001e3c38" & identifier)) + (binary_expression "(uVar28 & 0xffffffff) * 8" (parenthesized_expression "(uVar28 & 0xffffffff)" ( (binary_expression "uVar28 & 0xffffffff" identifier & number_literal) )) * number_literal)) + number_literal) ))))) ;) (expression_statement "bVar3 = bVar15 >> 4 & 1;" (assignment_expression "bVar3 = bVar15 >> 4 & 1" identifier = (binary_expression "bVar15 >> 4 & 1" (binary_expression "bVar15 >> 4" identifier >> number_literal) & number_literal)) ;) (if_statement "if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }" if (parenthesized_expression "(*(char *)(lVar23 + 0x18) == '\x02')" ( (binary_expression "*(char *)(lVar23 + 0x18) == '\x02'" (pointer_expression "*(char *)(lVar23 + 0x18)" * (cast_expression "(char *)(lVar23 + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar23 + 0x18)" ( (binary_expression "lVar23 + 0x18" identifier + number_literal) )))) == (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }" { (expression_statement "lVar23 = *(long *)(lVar23 + 0x10);" (assignment_expression "lVar23 = *(long *)(lVar23 + 0x10)" identifier = (pointer_expression "*(long *)(lVar23 + 0x10)" * (cast_expression "(long *)(lVar23 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar23 + 0x10)" ( (binary_expression "lVar23 + 0x10" identifier + number_literal) ))))) ;) (if_statement "if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }" if (parenthesized_expression "(bVar3 == 0)" ( (binary_expression "bVar3 == 0" identifier == number_literal) )) (compound_statement "{\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }" { (if_statement "if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }" if (parenthesized_expression "((bVar15 & 1) == 0)" ( (binary_expression "(bVar15 & 1) == 0" (parenthesized_expression "(bVar15 & 1)" ( (binary_expression "bVar15 & 1" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }" { (expression_statement "bVar15 = bVar15 >> 1 & 1;" (assignment_expression "bVar15 = bVar15 >> 1 & 1" identifier = (binary_expression "bVar15 >> 1 & 1" (binary_expression "bVar15 >> 1" identifier >> number_literal) & number_literal)) ;) (expression_statement "cVar25 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar25 = (-(bVar15 == 0) & 2U) + 2" identifier = (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" ( (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" - (parenthesized_expression "(bVar15 == 0)" ( (binary_expression "bVar15 == 0" identifier == number_literal) ))) & number_literal) )) + number_literal)) ;) (expression_statement "cVar19 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar19 = (-(bVar15 == 0) & 2U) + 2" identifier = (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" ( (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" - (parenthesized_expression "(bVar15 == 0)" ( (binary_expression "bVar15 == 0" identifier == number_literal) ))) & number_literal) )) + number_literal)) ;) }) (else_clause "else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }" else (compound_statement "{\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }" { (expression_statement "cVar25 = '\x01';" (assignment_expression "cVar25 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "cVar19 = '\x01';" (assignment_expression "cVar19 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);" (assignment_expression "lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f)" identifier = (binary_expression "lVar23 >> ((byte)DAT_001e3d38 & 0x3f)" identifier >> (parenthesized_expression "((byte)DAT_001e3d38 & 0x3f)" ( (binary_expression "(byte)DAT_001e3d38 & 0x3f" (cast_expression "(byte)DAT_001e3d38" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) ;) }))) }) (else_clause "else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }" else (compound_statement "{\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }" { (expression_statement "cVar25 = '\b';" (assignment_expression "cVar25 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) (expression_statement "cVar19 = '\b';" (assignment_expression "cVar19 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) }))) (expression_statement "uVar11 = FUN_00135250(lVar23,cVar19);" (assignment_expression "uVar11 = FUN_00135250(lVar23,cVar19)" identifier = (call_expression "FUN_00135250(lVar23,cVar19)" identifier (argument_list "(lVar23,cVar19)" ( identifier , identifier )))) ;) (expression_statement "uVar12 = FUN_00116fb0(cVar25);" (assignment_expression "uVar12 = FUN_00116fb0(cVar25)" identifier = (call_expression "FUN_00116fb0(cVar25)" identifier (argument_list "(cVar25)" ( identifier )))) ;) (expression_statement "FUN_00131030(uVar12,uVar11,cVar19);" (call_expression "FUN_00131030(uVar12,uVar11,cVar19)" identifier (argument_list "(uVar12,uVar11,cVar19)" ( identifier , identifier , identifier ))) ;) (expression_statement "uVar22 = DAT_001e3c24;" (assignment_expression "uVar22 = DAT_001e3c24" identifier = identifier) ;) }) (else_clause "else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }" else (compound_statement "{\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }" { (if_statement "if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }" if (parenthesized_expression "(bVar3 == 0)" ( (binary_expression "bVar3 == 0" identifier == number_literal) )) (compound_statement "{\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }" { (if_statement "if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }" if (parenthesized_expression "((bVar15 & 1) != 0)" ( (binary_expression "(bVar15 & 1) != 0" (parenthesized_expression "(bVar15 & 1)" ( (binary_expression "bVar15 & 1" identifier & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }" { (labeled_statement "LAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");" statement_identifier : (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1ec2,"output_disp")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_disp"" " string_content ") ))) ;)) })) (expression_statement "bVar3 = bVar15 >> 1;" (assignment_expression "bVar3 = bVar15 >> 1" identifier = (binary_expression "bVar15 >> 1" identifier >> number_literal)) ;) (expression_statement "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);" (assignment_expression "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" identifier = (pointer_expression "*(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" * (cast_expression "(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" ( (binary_expression "(long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2" (binary_expression "(long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8" (cast_expression "(long)&DAT_001e3c38" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&DAT_001e3c38" & identifier)) + (binary_expression "(uVar28 & 0xffffffff) * 8" (parenthesized_expression "(uVar28 & 0xffffffff)" ( (binary_expression "uVar28 & 0xffffffff" identifier & number_literal) )) * number_literal)) + number_literal) ))))) ;) (expression_statement "cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;" (assignment_expression "cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2" identifier = (binary_expression "(-((bVar3 & 1) == 0) & 2U) + 2" (parenthesized_expression "(-((bVar3 & 1) == 0) & 2U)" ( (binary_expression "-((bVar3 & 1) == 0) & 2U" (unary_expression "-((bVar3 & 1) == 0)" - (parenthesized_expression "((bVar3 & 1) == 0)" ( (binary_expression "(bVar3 & 1) == 0" (parenthesized_expression "(bVar3 & 1)" ( (binary_expression "bVar3 & 1" identifier & number_literal) )) == number_literal) ))) & number_literal) )) + number_literal)) ;) (expression_statement "uVar22 = (&DAT_001e3c88)[uVar28];" (assignment_expression "uVar22 = (&DAT_001e3c88)[uVar28]" identifier = (subscript_expression "(&DAT_001e3c88)[uVar28]" (parenthesized_expression "(&DAT_001e3c88)" ( (pointer_expression "&DAT_001e3c88" & identifier) )) [ identifier ])) ;) }) (else_clause "else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }" else (compound_statement "{\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }" { (expression_statement "uVar22 = (&DAT_001e3c88)[uVar28];" (assignment_expression "uVar22 = (&DAT_001e3c88)[uVar28]" identifier = (subscript_expression "(&DAT_001e3c88)[uVar28]" (parenthesized_expression "(&DAT_001e3c88)" ( (pointer_expression "&DAT_001e3c88" & identifier) )) [ identifier ])) ;) (if_statement "if ((bVar15 & 1) != 0) goto LAB_00138302;" if (parenthesized_expression "((bVar15 & 1) != 0)" ( (binary_expression "(bVar15 & 1) != 0" (parenthesized_expression "(bVar15 & 1)" ( (binary_expression "bVar15 & 1" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00138302;" goto statement_identifier ;)) (expression_statement "cVar19 = '\b';" (assignment_expression "cVar19 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) }))) (expression_statement "uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;" (assignment_expression "uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001" identifier = (binary_expression "(ulong)(bVar15 >> 3) & 0xffffffff00000001" (call_expression "(ulong)(bVar15 >> 3)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(bVar15 >> 3)" ( (binary_expression "bVar15 >> 3" identifier >> number_literal) ))) & number_literal)) ;) (expression_statement "uVar22 = uVar22 & 1;" (assignment_expression "uVar22 = uVar22 & 1" identifier = (binary_expression "uVar22 & 1" identifier & number_literal)) ;) (if_statement "if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }" if (parenthesized_expression "((uVar22 != 0) && (DAT_001e3c34 != 0))" ( (binary_expression "(uVar22 != 0) && (DAT_001e3c34 != 0)" (parenthesized_expression "(uVar22 != 0)" ( (binary_expression "uVar22 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_001e3c34 != 0)" ( (binary_expression "DAT_001e3c34 != 0" identifier != number_literal) ))) )) (compound_statement "{\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }" { (expression_statement "uVar9 = 0;" (assignment_expression "uVar9 = 0" identifier = number_literal) ;) (expression_statement "cVar25 = '\0';" (assignment_expression "cVar25 = '\0'" identifier = (char_literal "'\0'" ' escape_sequence ')) ;) (do_statement "do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);" do (compound_statement "{\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            }" { (if_statement "if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }" if (parenthesized_expression "((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0)" ( (binary_expression "(*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0" (parenthesized_expression "(*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc)" ( (binary_expression "*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc" (pointer_expression "*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1)" * (cast_expression "(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&DAT_001e3c38 + uVar9 * 8 + 1)" ( (binary_expression "(long)&DAT_001e3c38 + uVar9 * 8 + 1" (binary_expression "(long)&DAT_001e3c38 + uVar9 * 8" (cast_expression "(long)&DAT_001e3c38" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&DAT_001e3c38" & identifier)) + (binary_expression "uVar9 * 8" identifier * number_literal)) + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }" { (if_statement "if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }" if (parenthesized_expression "(cVar25 != '\0')" ( (binary_expression "cVar25 != '\0'" identifier != (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }" { (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1ed1,"output_disp")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_disp"" " string_content ") ))) ;) })) (expression_statement "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);" (assignment_expression "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1)" identifier = (pointer_expression "*(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1)" * (cast_expression "(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1)" ( (binary_expression "(long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1" (binary_expression "(long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8" (cast_expression "(long)&DAT_001e3c38" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&DAT_001e3c38" & identifier)) + (binary_expression "(uVar9 & 0xffffffff) * 8" (parenthesized_expression "(uVar9 & 0xffffffff)" ( (binary_expression "uVar9 & 0xffffffff" identifier & number_literal) )) * number_literal)) + number_literal) ))))) ;) (if_statement "if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }" if (parenthesized_expression "((char)bVar15 < '\0')" ( (binary_expression "(char)bVar15 < '\0'" (cast_expression "(char)bVar15" ( (type_descriptor "char" primitive_type) ) identifier) < (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }" { (expression_statement "lVar16 = 8;" (assignment_expression "lVar16 = 8" identifier = number_literal) ;) (expression_statement "cVar25 = '\b';" (assignment_expression "cVar25 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) }) (else_clause "else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }" else (if_statement "if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }" if (parenthesized_expression "(((bVar15 & 4) == 0) && ((bVar15 & 8) == 0))" ( (binary_expression "((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)" (parenthesized_expression "((bVar15 & 4) == 0)" ( (binary_expression "(bVar15 & 4) == 0" (parenthesized_expression "(bVar15 & 4)" ( (binary_expression "bVar15 & 4" identifier & number_literal) )) == number_literal) )) && (parenthesized_expression "((bVar15 & 8) == 0)" ( (binary_expression "(bVar15 & 8) == 0" (parenthesized_expression "(bVar15 & 8)" ( (binary_expression "bVar15 & 8" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }" { (expression_statement "bVar15 = bVar15 >> 4 & 1;" (assignment_expression "bVar15 = bVar15 >> 4 & 1" identifier = (binary_expression "bVar15 >> 4 & 1" (binary_expression "bVar15 >> 4" identifier >> number_literal) & number_literal)) ;) (expression_statement "lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;" (assignment_expression "lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2" identifier = (binary_expression "(ulong)(-(uint)(bVar15 == 0) & 2) + 2" (call_expression "(ulong)(-(uint)(bVar15 == 0) & 2)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(-(uint)(bVar15 == 0) & 2)" ( (binary_expression "-(uint)(bVar15 == 0) & 2" (unary_expression "-(uint)(bVar15 == 0)" - (call_expression "(uint)(bVar15 == 0)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(bVar15 == 0)" ( (binary_expression "bVar15 == 0" identifier == number_literal) )))) & number_literal) ))) + number_literal)) ;) (expression_statement "cVar25 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar25 = (-(bVar15 == 0) & 2U) + 2" identifier = (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" ( (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" - (parenthesized_expression "(bVar15 == 0)" ( (binary_expression "bVar15 == 0" identifier == number_literal) ))) & number_literal) )) + number_literal)) ;) }) (else_clause "else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }" else (compound_statement "{\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }" { (expression_statement "lVar16 = 1;" (assignment_expression "lVar16 = 1" identifier = number_literal) ;) (expression_statement "cVar25 = '\x01';" (assignment_expression "cVar25 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) }))))) (expression_statement "*(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;" (assignment_expression "*(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16" (pointer_expression "*(long *)(lVar23 + 0x10)" * (cast_expression "(long *)(lVar23 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar23 + 0x10)" ( (binary_expression "lVar23 + 0x10" identifier + number_literal) )))) = (binary_expression "*(long *)(lVar23 + 0x10) - lVar16" (pointer_expression "*(long *)(lVar23 + 0x10)" * (cast_expression "(long *)(lVar23 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar23 + 0x10)" ( (binary_expression "lVar23 + 0x10" identifier + number_literal) )))) - identifier)) ;) })) (expression_statement "uVar9 = uVar9 + 1;" (assignment_expression "uVar9 = uVar9 + 1" identifier = (binary_expression "uVar9 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "((uint)uVar9 < uVar21)" ( (binary_expression "(uint)uVar9 < uVar21" (cast_expression "(uint)uVar9" ( (type_descriptor "uint" type_identifier) ) identifier) < identifier) )) ;) (if_statement "if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }" if (parenthesized_expression "(cVar25 == '\0')" ( (binary_expression "cVar25 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }" { (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp")" identifier (argument_list "("../../gas/config/tc-i386.c",0x1ed6,"output_disp")" ( (string_literal ""../../gas/config/tc-i386.c"" " string_content ") , number_literal , (string_literal ""output_disp"" " string_content ") ))) ;) })) })) (expression_statement "lVar16 = FUN_00116fb0(cVar19);" (assignment_expression "lVar16 = FUN_00116fb0(cVar19)" identifier = (call_expression "FUN_00116fb0(cVar19)" identifier (argument_list "(cVar19)" ( identifier )))) ;) (expression_statement "uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);" (assignment_expression "uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28])" identifier = (call_expression "FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28])" identifier (argument_list "(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28])" ( identifier , identifier , (binary_expression "uVar30 & 0xffffffff" identifier & number_literal) , (subscript_expression "(&DAT_001e3c9c)[uVar28]" (parenthesized_expression "(&DAT_001e3c9c)" ( (pointer_expression "&DAT_001e3c9c" & identifier) )) [ identifier ]) )))) ;) (expression_statement "lVar23 = DAT_001e4648;" (assignment_expression "lVar23 = DAT_001e4648" identifier = identifier) ;) (if_statement "if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }" if (parenthesized_expression "(DAT_001e3a80 == 0)" ( (binary_expression "DAT_001e3a80 == 0" identifier == number_literal) )) (compound_statement "{\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }" { (expression_statement "plVar14 = (&DAT_001e3c60)[uVar28];" (assignment_expression "plVar14 = (&DAT_001e3c60)[uVar28]" identifier = (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" ( (pointer_expression "&DAT_001e3c60" & identifier) )) [ identifier ])) ;) (expression_statement "lVar16 = lVar16 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar16 = lVar16 - (DAT_001e4648 + 0x80)" identifier = (binary_expression "lVar16 - (DAT_001e4648 + 0x80)" identifier - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) )))) ;) }) (else_clause "else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }" else (compound_statement "{\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }" { (expression_statement "plVar14 = (&DAT_001e3c60)[uVar28];" (assignment_expression "plVar14 = (&DAT_001e3c60)[uVar28]" identifier = (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" ( (pointer_expression "&DAT_001e3c60" & identifier) )) [ identifier ])) ;) (if_statement "if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }" if (parenthesized_expression "(DAT_001e3a80 == *plVar14)" ( (binary_expression "DAT_001e3a80 == *plVar14" identifier == (pointer_expression "*plVar14" * identifier)) )) (compound_statement "{\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }" { (if_statement "if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }" if (parenthesized_expression "((uVar21 == 2) || (uVar21 == 0x184))" ( (binary_expression "(uVar21 == 2) || (uVar21 == 0x184)" (parenthesized_expression "(uVar21 == 2)" ( (binary_expression "uVar21 == 2" identifier == number_literal) )) || (parenthesized_expression "(uVar21 == 0x184)" ( (binary_expression "uVar21 == 0x184" identifier == number_literal) ))) )) (compound_statement "{\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }" { (labeled_statement "LAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }" statement_identifier : (if_statement "if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }" if (parenthesized_expression "((char)plVar14[3] != '\x03')" ( (binary_expression "(char)plVar14[3] != '\x03'" (cast_expression "(char)plVar14[3]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "plVar14[3]" identifier [ number_literal ])) != (char_literal "'\x03'" ' escape_sequence ')) )) (compound_statement "{\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }" { (if_statement "if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }" if (parenthesized_expression "((char)plVar14[3] == '\x13')" ( (binary_expression "(char)plVar14[3] == '\x13'" (cast_expression "(char)plVar14[3]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "plVar14[3]" identifier [ number_literal ])) == (char_literal "'\x13'" ' escape_sequence ')) )) (compound_statement "{\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }" { (expression_statement "uVar30 = (ulong)uVar21;" (assignment_expression "uVar30 = (ulong)uVar21" identifier = (cast_expression "(ulong)uVar21" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "lVar23 = FUN_0012bc00(plVar14[1]);" (assignment_expression "lVar23 = FUN_0012bc00(plVar14[1])" identifier = (call_expression "FUN_0012bc00(plVar14[1])" identifier (argument_list "(plVar14[1])" ( (subscript_expression "plVar14[1]" identifier [ number_literal ]) )))) ;) (expression_statement "uVar21 = (uint)uVar30;" (assignment_expression "uVar21 = (uint)uVar30" identifier = (cast_expression "(uint)uVar30" ( (type_descriptor "uint" type_identifier) ) identifier)) ;) (expression_statement "plVar14 = (&DAT_001e3c60)[uVar28];" (assignment_expression "plVar14 = (&DAT_001e3c60)[uVar28]" identifier = (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" ( (pointer_expression "&DAT_001e3c60" & identifier) )) [ identifier ])) ;) (if_statement "if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;" if (parenthesized_expression "(*(char *)(lVar23 + 0x18) == '\x14')" ( (binary_expression "*(char *)(lVar23 + 0x18) == '\x14'" (pointer_expression "*(char *)(lVar23 + 0x18)" * (cast_expression "(char *)(lVar23 + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar23 + 0x18)" ( (binary_expression "lVar23 + 0x18" identifier + number_literal) )))) == (char_literal "'\x14'" ' escape_sequence ')) )) (goto_statement "goto LAB_00138730;" goto statement_identifier ;)) })) (goto_statement "goto LAB_001385b1;" goto statement_identifier ;) }))) (labeled_statement "LAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);" statement_identifier : (expression_statement "lVar16 = lVar16 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar16 = lVar16 - (DAT_001e4648 + 0x80)" identifier = (binary_expression "lVar16 - (DAT_001e4648 + 0x80)" identifier - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) )))) ;)) }) (else_clause "else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }" else (compound_statement "{\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }" { (if_statement "if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }" if (parenthesized_expression "(uVar21 == 1)" ( (binary_expression "uVar21 == 1" identifier == number_literal) )) (compound_statement "{\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }" { (if_statement "if (DAT_001e3b10 == 0) goto LAB_001383be;" if (parenthesized_expression "(DAT_001e3b10 == 0)" ( (binary_expression "DAT_001e3b10 == 0" identifier == number_literal) )) (goto_statement "goto LAB_001383be;" goto statement_identifier ;)) (goto_statement "goto LAB_001386f0;" goto statement_identifier ;) })) (labeled_statement "LAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);" statement_identifier : (expression_statement "lVar16 = lVar16 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar16 = lVar16 - (DAT_001e4648 + 0x80)" identifier = (binary_expression "lVar16 - (DAT_001e4648 + 0x80)" identifier - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) )))) ;)) (expression_statement "lVar23 = DAT_001e4648;" (assignment_expression "lVar23 = DAT_001e4648" identifier = identifier) ;) (if_statement "if (uVar21 != 9) goto LAB_001383d2;" if (parenthesized_expression "(uVar21 != 9)" ( (binary_expression "uVar21 != 9" identifier != number_literal) )) (goto_statement "goto LAB_001383d2;" goto statement_identifier ;)) }))) (expression_statement "lVar23 = DAT_001e4648;" (assignment_expression "lVar23 = DAT_001e4648" identifier = identifier) ;) (if_statement "if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }" if (parenthesized_expression "(lVar1 == DAT_001e4648)" ( (binary_expression "lVar1 == DAT_001e4648" identifier == identifier) )) (compound_statement "{\n                lVar17 = -lVar6;\n              }" { (expression_statement "lVar17 = -lVar6;" (assignment_expression "lVar17 = -lVar6" identifier = (unary_expression "-lVar6" - identifier)) ;) }) (else_clause "else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }" else (compound_statement "{\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }" { (expression_statement "uVar30 = *(ulong *)(lVar1 + 0x10);" (assignment_expression "uVar30 = *(ulong *)(lVar1 + 0x10)" identifier = (pointer_expression "*(ulong *)(lVar1 + 0x10)" * (cast_expression "(ulong *)(lVar1 + 0x10)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar1 + 0x10)" ( (binary_expression "lVar1 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "lVar17 = uVar30 - lVar6;" (assignment_expression "lVar17 = uVar30 - lVar6" identifier = (binary_expression "uVar30 - lVar6" identifier - identifier)) ;) (for_statement "for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }" for ( (assignment_expression "lVar26 = *(long *)(lVar1 + 0x38)" identifier = (pointer_expression "*(long *)(lVar1 + 0x38)" * (cast_expression "(long *)(lVar1 + 0x38)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar1 + 0x38)" ( (binary_expression "lVar1 + 0x38" identifier + number_literal) ))))) ; (parenthesized_expression "(lVar26 != 0 && (lVar26 != DAT_001e4648))" ( (binary_expression "lVar26 != 0 && (lVar26 != DAT_001e4648)" (binary_expression "lVar26 != 0" identifier != number_literal) && (parenthesized_expression "(lVar26 != DAT_001e4648)" ( (binary_expression "lVar26 != DAT_001e4648" identifier != identifier) ))) )) ; (assignment_expression "lVar26 = *(long *)(lVar26 + 0x38)" identifier = (pointer_expression "*(long *)(lVar26 + 0x38)" * (cast_expression "(long *)(lVar26 + 0x38)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar26 + 0x38)" ( (binary_expression "lVar26 + 0x38" identifier + number_literal) ))))) ) (compound_statement "{\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }" { (expression_statement "lVar17 = lVar17 + *(long *)(lVar26 + 0x10);" (assignment_expression "lVar17 = lVar17 + *(long *)(lVar26 + 0x10)" identifier = (binary_expression "lVar17 + *(long *)(lVar26 + 0x10)" identifier + (pointer_expression "*(long *)(lVar26 + 0x10)" * (cast_expression "(long *)(lVar26 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar26 + 0x10)" ( (binary_expression "lVar26 + 0x10" identifier + number_literal) )))))) ;) })) }))) (if_statement "if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }" if (parenthesized_expression "(DAT_001e3b10 == 0)" ( (binary_expression "DAT_001e3b10 == 0" identifier == number_literal) )) (compound_statement "{\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }" { (expression_statement "plVar14[2] = plVar14[2] + lVar16 + lVar17;" (assignment_expression "plVar14[2] = plVar14[2] + lVar16 + lVar17" (subscript_expression "plVar14[2]" identifier [ number_literal ]) = (binary_expression "plVar14[2] + lVar16 + lVar17" (binary_expression "plVar14[2] + lVar16" (subscript_expression "plVar14[2]" identifier [ number_literal ]) + identifier) + identifier)) ;) (expression_statement "uVar21 = 0x16b;" (assignment_expression "uVar21 = 0x16b" identifier = number_literal) ;) }) (else_clause "else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }" else (compound_statement "{\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }" { (expression_statement "uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;" (assignment_expression "uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e" identifier = (binary_expression "(uint)(uVar21 == 1) * 3 + 0x18e" (binary_expression "(uint)(uVar21 == 1) * 3" (call_expression "(uint)(uVar21 == 1)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar21 == 1)" ( (binary_expression "uVar21 == 1" identifier == number_literal) ))) * number_literal) + number_literal)) ;) }))) }) (else_clause "else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }" else (compound_statement "{\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }" { (labeled_statement "LAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);" statement_identifier : (expression_statement "lVar16 = lVar16 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar16 = lVar16 - (DAT_001e4648 + 0x80)" identifier = (binary_expression "lVar16 - (DAT_001e4648 + 0x80)" identifier - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) )))) ;)) }))) }))) (labeled_statement "LAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);" statement_identifier : (expression_statement "pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);" (assignment_expression "pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30)" identifier = (cast_expression "(byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30)" identifier (argument_list "(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30)" ( identifier , identifier , identifier , identifier , identifier , identifier , identifier ))))) ;)) (expression_statement "lVar23 = DAT_001e3cb0;" (assignment_expression "lVar23 = DAT_001e3cb0" identifier = identifier) ;) (expression_statement "uVar22 = DAT_001e3c24;" (assignment_expression "uVar22 = DAT_001e3c24" identifier = identifier) ;) (if_statement "if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }" if (parenthesized_expression "(DAT_001e3ce7 == '\0')" ( (binary_expression "DAT_001e3ce7 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }" { (if_statement "if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;" if (parenthesized_expression "(DAT_001da788 == 0)" ( (binary_expression "DAT_001da788 == 0" identifier == number_literal) )) (compound_statement "{\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }" { (if_statement "if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }" if (parenthesized_expression "(DAT_001e3cf4 == 0 && DAT_001e3b10 == 0)" ( (binary_expression "DAT_001e3cf4 == 0 && DAT_001e3b10 == 0" (binary_expression "DAT_001e3cf4 == 0" identifier == number_literal) && (binary_expression "DAT_001e3b10 == 0" identifier == number_literal)) )) (compound_statement "{\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }" { (labeled_statement "LAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;" statement_identifier : (if_statement "if (DAT_001e3cec == 5) goto LAB_0013841d;" if (parenthesized_expression "(DAT_001e3cec == 5)" ( (binary_expression "DAT_001e3cec == 5" identifier == number_literal) )) (goto_statement "goto LAB_0013841d;" goto statement_identifier ;))) })) }) (else_clause "else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;" else (if_statement "if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;" if (parenthesized_expression "(DAT_001e3cf4 == 2)" ( (binary_expression "DAT_001e3cf4 == 2" identifier == number_literal) )) (compound_statement "{\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }" { (labeled_statement "LAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;" statement_identifier : (if_statement "if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;" if (parenthesized_expression "(DAT_001e3c24 == 1)" ( (binary_expression "DAT_001e3c24 == 1" identifier == number_literal) )) (compound_statement "{\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }" { (if_statement "if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }" if (parenthesized_expression "((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0))" ( (binary_expression "(DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)" (parenthesized_expression "(DAT_001e3bcc != 0xff)" ( (binary_expression "DAT_001e3bcc != 0xff" identifier != number_literal) )) || (parenthesized_expression "((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)" ( (binary_expression "(DAT_001e3cf0 - 2U & 0xfffffffd) != 0" (parenthesized_expression "(DAT_001e3cf0 - 2U & 0xfffffffd)" ( (binary_expression "DAT_001e3cf0 - 2U & 0xfffffffd" (binary_expression "DAT_001e3cf0 - 2U" identifier - number_literal) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }" { (if_statement "if (DAT_001e3c34 == 0) {\n                    return;\n                  }" if (parenthesized_expression "(DAT_001e3c34 == 0)" ( (binary_expression "DAT_001e3c34 == 0" identifier == number_literal) )) (compound_statement "{\n                    return;\n                  }" { (return_statement "return;" return ;) })) (goto_statement "goto LAB_00137e9a;" goto statement_identifier ;) })) }) (else_clause "else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;" else (if_statement "if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;" if (parenthesized_expression "((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3))))" ( (binary_expression "(DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))" (parenthesized_expression "(DAT_001e3c24 != 2)" ( (binary_expression "DAT_001e3c24 != 2" identifier != number_literal) )) || (parenthesized_expression "(((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))" ( (parenthesized_expression "((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3))" ( (binary_expression "(DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)" (parenthesized_expression "(DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85))" ( (binary_expression "DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)" (binary_expression "DAT_001e3bcc != 0x8b" identifier != number_literal) && (parenthesized_expression "(DAT_001e3bcc != 0x85)" ( (binary_expression "DAT_001e3bcc != 0x85" identifier != number_literal) ))) )) && (parenthesized_expression "((DAT_001e3bcc & 199) != 3)" ( (binary_expression "(DAT_001e3bcc & 199) != 3" (parenthesized_expression "(DAT_001e3bcc & 199)" ( (binary_expression "DAT_001e3bcc & 199" identifier & number_literal) )) != number_literal) ))) )) ))) )) (goto_statement "goto LAB_00138326;" goto statement_identifier ;))))) (if_statement "if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }" if (parenthesized_expression "(DAT_001e3b10 == 0)" ( (binary_expression "DAT_001e3b10 == 0" identifier == number_literal) )) (compound_statement "{\n                *pbVar8 = *pbVar8 | 0x10;\n              }" { (expression_statement "*pbVar8 = *pbVar8 | 0x10;" (assignment_expression "*pbVar8 = *pbVar8 | 0x10" (pointer_expression "*pbVar8" * identifier) = (binary_expression "*pbVar8 | 0x10" (pointer_expression "*pbVar8" * identifier) | number_literal)) ;) }) (else_clause "else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }" else (compound_statement "{\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }" { (expression_statement "bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';" (assignment_expression "bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b'" identifier = (binary_expression "*pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b'" (binary_expression "*pbVar8 & 0xf7" (pointer_expression "*pbVar8" * identifier) & number_literal) | (binary_expression "(DAT_001e3cf8 != 0) * '\b'" (parenthesized_expression "(DAT_001e3cf8 != 0)" ( (binary_expression "DAT_001e3cf8 != 0" identifier != number_literal) )) * (char_literal "'\b'" ' escape_sequence ')))) ;) (expression_statement "*pbVar8 = bVar15;" (assignment_expression "*pbVar8 = bVar15" (pointer_expression "*pbVar8" * identifier) = identifier) ;) (if_statement "if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }" if (parenthesized_expression "((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11)))" ( (binary_expression "(lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))" (parenthesized_expression "(lVar23 != 0)" ( (binary_expression "lVar23 != 0" identifier != number_literal) )) && (parenthesized_expression "(0xfd < *(byte *)(lVar23 + 0x11))" ( (binary_expression "0xfd < *(byte *)(lVar23 + 0x11)" number_literal < (pointer_expression "*(byte *)(lVar23 + 0x11)" * (cast_expression "(byte *)(lVar23 + 0x11)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar23 + 0x11)" ( (binary_expression "lVar23 + 0x11" identifier + number_literal) ))))) ))) )) (compound_statement "{\n                  *pbVar8 = bVar15 | 0x10;\n                }" { (expression_statement "*pbVar8 = bVar15 | 0x10;" (assignment_expression "*pbVar8 = bVar15 | 0x10" (pointer_expression "*pbVar8" * identifier) = (binary_expression "bVar15 | 0x10" identifier | number_literal)) ;) })) }))) }) (else_clause "else if (DAT_001e3cf4 == 0) goto LAB_00138410;" else (if_statement "if (DAT_001e3cf4 == 0) goto LAB_00138410;" if (parenthesized_expression "(DAT_001e3cf4 == 0)" ( (binary_expression "DAT_001e3cf4 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00138410;" goto statement_identifier ;)))))) })) }))) })) (labeled_statement "LAB_00138326:\n      uVar21 = uVar22;" statement_identifier : (expression_statement "uVar21 = uVar22;" (assignment_expression "uVar21 = uVar22" identifier = identifier) ;)) (expression_statement "uVar28 = uVar28 + 1;" (assignment_expression "uVar28 = uVar28 + 1" identifier = (binary_expression "uVar28 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "((uint)uVar28 < uVar21)" ( (binary_expression "(uint)uVar28 < uVar21" (cast_expression "(uint)uVar28" ( (type_descriptor "uint" type_identifier) ) identifier) < identifier) )) ;) })) (if_statement "if ((DAT_001e3c34 != 0) && (DAT_001e3c24 != 0)) {\nLAB_00137e9a:\n    uVar28 = 0;\n    do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);\n  }" if (parenthesized_expression "((DAT_001e3c34 != 0) && (DAT_001e3c24 != 0))" ( (binary_expression "(DAT_001e3c34 != 0) && (DAT_001e3c24 != 0)" (parenthesized_expression "(DAT_001e3c34 != 0)" ( (binary_expression "DAT_001e3c34 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_001e3c24 != 0)" ( (binary_expression "DAT_001e3c24 != 0" identifier != number_literal) ))) )) (compound_statement "{\nLAB_00137e9a:\n    uVar28 = 0;\n    do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);\n  }" { (labeled_statement "LAB_00137e9a:\n    uVar28 = 0;" statement_identifier : (expression_statement "uVar28 = 0;" (assignment_expression "uVar28 = 0" identifier = number_literal) ;)) (do_statement "do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);" do (compound_statement "{\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    }" { (if_statement "if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }" if (parenthesized_expression "(((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0))" ( (binary_expression "((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)" (parenthesized_expression "((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28))" ( (binary_expression "(DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)" (parenthesized_expression "(DAT_001e3d28 == 0)" ( (binary_expression "DAT_001e3d28 == 0" identifier == number_literal) )) || (parenthesized_expression "(*(int *)(DAT_001e3d28 + 4) != (int)uVar28)" ( (binary_expression "*(int *)(DAT_001e3d28 + 4) != (int)uVar28" (pointer_expression "*(int *)(DAT_001e3d28 + 4)" * (cast_expression "(int *)(DAT_001e3d28 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(DAT_001e3d28 + 4)" ( (binary_expression "DAT_001e3d28 + 4" identifier + number_literal) )))) != (cast_expression "(int)uVar28" ( (type_descriptor "int" primitive_type) ) identifier)) ))) )) && (parenthesized_expression "((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)" ( (binary_expression "(*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0" (parenthesized_expression "(*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc)" ( (binary_expression "*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc" (pointer_expression "*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" * (cast_expression "(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" ( (binary_expression "(long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1" (binary_expression "(long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8" (cast_expression "(long)&DAT_001e3bc8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&DAT_001e3bc8" & identifier)) + (binary_expression "(uVar28 + 0xe) * 8" (parenthesized_expression "(uVar28 + 0xe)" ( (binary_expression "uVar28 + 0xe" identifier + number_literal) )) * number_literal)) + number_literal) )))) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }" { (expression_statement "bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);" (assignment_expression "bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" identifier = (pointer_expression "*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" * (cast_expression "(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" ( (binary_expression "(long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1" (binary_expression "(long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8" (cast_expression "(long)&DAT_001e3bc8" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&DAT_001e3bc8" & identifier)) + (binary_expression "(uVar28 + 0xe) * 8" (parenthesized_expression "(uVar28 + 0xe)" ( (binary_expression "uVar28 + 0xe" identifier + number_literal) )) * number_literal)) + number_literal) ))))) ;) (if_statement "if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }" if (parenthesized_expression "(*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02')" ( (binary_expression "*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02'" (pointer_expression "*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18)" * (cast_expression "(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)(&DAT_001e3c60)[uVar28] + 0x18)" ( (binary_expression "(long)(&DAT_001e3c60)[uVar28] + 0x18" (cast_expression "(long)(&DAT_001e3c60)[uVar28]" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" ( (pointer_expression "&DAT_001e3c60" & identifier) )) [ identifier ])) + number_literal) )))) == (char_literal "'\x02'" ' escape_sequence ')) )) (compound_statement "{\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }" { (if_statement "if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }" if (parenthesized_expression "((char)bVar15 < '\0')" ( (binary_expression "(char)bVar15 < '\0'" (cast_expression "(char)bVar15" ( (type_descriptor "char" primitive_type) ) identifier) < (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }" { (expression_statement "cVar25 = '\b';" (assignment_expression "cVar25 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) (expression_statement "cVar19 = '\b';" (assignment_expression "cVar19 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) }) (else_clause "else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }" else (if_statement "if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }" if (parenthesized_expression "(((bVar15 & 4) == 0) && ((bVar15 & 8) == 0))" ( (binary_expression "((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)" (parenthesized_expression "((bVar15 & 4) == 0)" ( (binary_expression "(bVar15 & 4) == 0" (parenthesized_expression "(bVar15 & 4)" ( (binary_expression "bVar15 & 4" identifier & number_literal) )) == number_literal) )) && (parenthesized_expression "((bVar15 & 8) == 0)" ( (binary_expression "(bVar15 & 8) == 0" (parenthesized_expression "(bVar15 & 8)" ( (binary_expression "bVar15 & 8" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }" { (expression_statement "bVar15 = bVar15 >> 4 & 1;" (assignment_expression "bVar15 = bVar15 >> 4 & 1" identifier = (binary_expression "bVar15 >> 4 & 1" (binary_expression "bVar15 >> 4" identifier >> number_literal) & number_literal)) ;) (expression_statement "cVar25 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar25 = (-(bVar15 == 0) & 2U) + 2" identifier = (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" ( (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" - (parenthesized_expression "(bVar15 == 0)" ( (binary_expression "bVar15 == 0" identifier == number_literal) ))) & number_literal) )) + number_literal)) ;) (expression_statement "cVar19 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar19 = (-(bVar15 == 0) & 2U) + 2" identifier = (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" ( (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" - (parenthesized_expression "(bVar15 == 0)" ( (binary_expression "bVar15 == 0" identifier == number_literal) ))) & number_literal) )) + number_literal)) ;) }) (else_clause "else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }" else (compound_statement "{\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }" { (expression_statement "cVar25 = '\x01';" (assignment_expression "cVar25 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "cVar19 = '\x01';" (assignment_expression "cVar19 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) }))))) (expression_statement "uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);" (assignment_expression "uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19)" identifier = (call_expression "FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19)" identifier (argument_list "(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19)" ( (pointer_expression "*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10)" * (cast_expression "(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)(&DAT_001e3c60)[uVar28] + 0x10)" ( (binary_expression "(long)(&DAT_001e3c60)[uVar28] + 0x10" (cast_expression "(long)(&DAT_001e3c60)[uVar28]" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" ( (pointer_expression "&DAT_001e3c60" & identifier) )) [ identifier ])) + number_literal) )))) , identifier )))) ;) (expression_statement "uVar12 = FUN_00116fb0(cVar25);" (assignment_expression "uVar12 = FUN_00116fb0(cVar25)" identifier = (call_expression "FUN_00116fb0(cVar25)" identifier (argument_list "(cVar25)" ( identifier )))) ;) (expression_statement "FUN_00131030(uVar12,uVar11,cVar19);" (call_expression "FUN_00131030(uVar12,uVar11,cVar19)" identifier (argument_list "(uVar12,uVar11,cVar19)" ( identifier , identifier , identifier ))) ;) }) (else_clause "else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }" else (compound_statement "{\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }" { (if_statement "if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }" if (parenthesized_expression "((char)bVar15 < '\0')" ( (binary_expression "(char)bVar15 < '\0'" (cast_expression "(char)bVar15" ( (type_descriptor "char" primitive_type) ) identifier) < (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }" { (expression_statement "cVar19 = '\b';" (assignment_expression "cVar19 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) (expression_statement "cVar25 = '\b';" (assignment_expression "cVar25 = '\b'" identifier = (char_literal "'\b'" ' escape_sequence ')) ;) }) (else_clause "else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }" else (if_statement "if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }" if (parenthesized_expression "(((bVar15 & 4) == 0) && ((bVar15 & 8) == 0))" ( (binary_expression "((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)" (parenthesized_expression "((bVar15 & 4) == 0)" ( (binary_expression "(bVar15 & 4) == 0" (parenthesized_expression "(bVar15 & 4)" ( (binary_expression "bVar15 & 4" identifier & number_literal) )) == number_literal) )) && (parenthesized_expression "((bVar15 & 8) == 0)" ( (binary_expression "(bVar15 & 8) == 0" (parenthesized_expression "(bVar15 & 8)" ( (binary_expression "bVar15 & 8" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }" { (expression_statement "bVar15 = bVar15 >> 4 & 1;" (assignment_expression "bVar15 = bVar15 >> 4 & 1" identifier = (binary_expression "bVar15 >> 4 & 1" (binary_expression "bVar15 >> 4" identifier >> number_literal) & number_literal)) ;) (expression_statement "cVar25 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar25 = (-(bVar15 == 0) & 2U) + 2" identifier = (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" ( (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" - (parenthesized_expression "(bVar15 == 0)" ( (binary_expression "bVar15 == 0" identifier == number_literal) ))) & number_literal) )) + number_literal)) ;) (expression_statement "cVar19 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar19 = (-(bVar15 == 0) & 2U) + 2" identifier = (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" ( (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" - (parenthesized_expression "(bVar15 == 0)" ( (binary_expression "bVar15 == 0" identifier == number_literal) ))) & number_literal) )) + number_literal)) ;) }) (else_clause "else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }" else (compound_statement "{\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }" { (expression_statement "cVar19 = '\x01';" (assignment_expression "cVar19 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) (expression_statement "cVar25 = '\x01';" (assignment_expression "cVar25 = '\x01'" identifier = (char_literal "'\x01'" ' escape_sequence ')) ;) }))))) (expression_statement "bVar15 = 0;" (assignment_expression "bVar15 = 0" identifier = number_literal) ;) (if_statement "if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }" if (parenthesized_expression "((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0'))" ( (binary_expression "(((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')" (parenthesized_expression "(((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q'))" ( (binary_expression "((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')" (parenthesized_expression "((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0)" ( (binary_expression "(*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0" (parenthesized_expression "(*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40)" ( (binary_expression "*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40" (pointer_expression "*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1)" * (cast_expression "(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)&DAT_001e3c38 + uVar28 * 8 + 1)" ( (binary_expression "(long)&DAT_001e3c38 + uVar28 * 8 + 1" (binary_expression "(long)&DAT_001e3c38 + uVar28 * 8" (cast_expression "(long)&DAT_001e3c38" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (pointer_expression "&DAT_001e3c38" & identifier)) + (binary_expression "uVar28 * 8" identifier * number_literal)) + number_literal) )))) & number_literal) )) != number_literal) )) && (parenthesized_expression "(bVar15 = 1, DAT_001e3c20 != 'q')" ( (comma_expression "bVar15 = 1, DAT_001e3c20 != 'q'" (assignment_expression "bVar15 = 1" identifier = number_literal) , (binary_expression "DAT_001e3c20 != 'q'" identifier != (char_literal "'q'" ' character '))) ))) )) && (parenthesized_expression "(bVar15 = 0, DAT_001e3c20 == '\0')" ( (comma_expression "bVar15 = 0, DAT_001e3c20 == '\0'" (assignment_expression "bVar15 = 0" identifier = number_literal) , (binary_expression "DAT_001e3c20 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence '))) ))) )) (compound_statement "{\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }" { (expression_statement "bVar15 = DAT_001e3bea >> 3 & 1;" (assignment_expression "bVar15 = DAT_001e3bea >> 3 & 1" identifier = (binary_expression "DAT_001e3bea >> 3 & 1" (binary_expression "DAT_001e3bea >> 3" identifier >> number_literal) & number_literal)) ;) })) (expression_statement "lVar23 = FUN_00116fb0(cVar19);" (assignment_expression "lVar23 = FUN_00116fb0(cVar19)" identifier = (call_expression "FUN_00116fb0(cVar19)" identifier (argument_list "(cVar19)" ( identifier )))) ;) (expression_statement "iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);" (assignment_expression "iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28])" identifier = (call_expression "FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28])" identifier (argument_list "(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28])" ( identifier , number_literal , identifier , (subscript_expression "(&DAT_001e3c9c)[uVar28]" (parenthesized_expression "(&DAT_001e3c9c)" ( (pointer_expression "&DAT_001e3c9c" & identifier) )) [ identifier ]) )))) ;) (if_statement "if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }" if (parenthesized_expression "((iVar4 - 1U < 2) || (iVar4 == 0x184))" ( (binary_expression "(iVar4 - 1U < 2) || (iVar4 == 0x184)" (parenthesized_expression "(iVar4 - 1U < 2)" ( (binary_expression "iVar4 - 1U < 2" (binary_expression "iVar4 - 1U" identifier - number_literal) < number_literal) )) || (parenthesized_expression "(iVar4 == 0x184)" ( (binary_expression "iVar4 == 0x184" identifier == number_literal) ))) )) (compound_statement "{\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }" { (expression_statement "plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];" (assignment_expression "plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14]" identifier = (cast_expression "(long *)(&DAT_001e3bc0)[uVar28 + 0x14]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "(&DAT_001e3bc0)[uVar28 + 0x14]" (parenthesized_expression "(&DAT_001e3bc0)" ( (pointer_expression "&DAT_001e3bc0" & identifier) )) [ (binary_expression "uVar28 + 0x14" identifier + number_literal) ]))) ;) (if_statement "if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }" if (parenthesized_expression "((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14))" ( (binary_expression "(DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)" (parenthesized_expression "(DAT_001e3a80 != 0)" ( (binary_expression "DAT_001e3a80 != 0" identifier != number_literal) )) && (parenthesized_expression "(DAT_001e3a80 == *plVar14)" ( (binary_expression "DAT_001e3a80 == *plVar14" identifier == (pointer_expression "*plVar14" * identifier)) ))) )) (compound_statement "{\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }" { (if_statement "if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }" if (parenthesized_expression "((char)plVar14[3] == '\x03')" ( (binary_expression "(char)plVar14[3] == '\x03'" (cast_expression "(char)plVar14[3]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "plVar14[3]" identifier [ number_literal ])) == (char_literal "'\x03'" ' escape_sequence ')) )) (compound_statement "{\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }" { (labeled_statement "LAB_00138a92:\n                lVar16 = DAT_001e4648;" statement_identifier : (expression_statement "lVar16 = DAT_001e4648;" (assignment_expression "lVar16 = DAT_001e4648" identifier = identifier) ;)) (expression_statement "lVar26 = lVar23 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar26 = lVar23 - (DAT_001e4648 + 0x80)" identifier = (binary_expression "lVar23 - (DAT_001e4648 + 0x80)" identifier - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) )))) ;) (if_statement "if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }" if (parenthesized_expression "(lVar1 == DAT_001e4648)" ( (binary_expression "lVar1 == DAT_001e4648" identifier == identifier) )) (compound_statement "{\n                  lVar18 = -lVar6;\n                }" { (expression_statement "lVar18 = -lVar6;" (assignment_expression "lVar18 = -lVar6" identifier = (unary_expression "-lVar6" - identifier)) ;) }) (else_clause "else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }" else (compound_statement "{\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }" { (expression_statement "lVar23 = *(long *)(lVar1 + 0x10);" (assignment_expression "lVar23 = *(long *)(lVar1 + 0x10)" identifier = (pointer_expression "*(long *)(lVar1 + 0x10)" * (cast_expression "(long *)(lVar1 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar1 + 0x10)" ( (binary_expression "lVar1 + 0x10" identifier + number_literal) ))))) ;) (expression_statement "lVar18 = lVar23 - lVar6;" (assignment_expression "lVar18 = lVar23 - lVar6" identifier = (binary_expression "lVar23 - lVar6" identifier - identifier)) ;) (for_statement "for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }" for ( (assignment_expression "lVar17 = *(long *)(lVar1 + 0x38)" identifier = (pointer_expression "*(long *)(lVar1 + 0x38)" * (cast_expression "(long *)(lVar1 + 0x38)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar1 + 0x38)" ( (binary_expression "lVar1 + 0x38" identifier + number_literal) ))))) ; (parenthesized_expression "(lVar17 != 0 && (DAT_001e4648 != lVar17))" ( (binary_expression "lVar17 != 0 && (DAT_001e4648 != lVar17)" (binary_expression "lVar17 != 0" identifier != number_literal) && (parenthesized_expression "(DAT_001e4648 != lVar17)" ( (binary_expression "DAT_001e4648 != lVar17" identifier != identifier) ))) )) ; (assignment_expression "lVar17 = *(long *)(lVar17 + 0x38)" identifier = (pointer_expression "*(long *)(lVar17 + 0x38)" * (cast_expression "(long *)(lVar17 + 0x38)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x38)" ( (binary_expression "lVar17 + 0x38" identifier + number_literal) ))))) ) (compound_statement "{\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }" { (expression_statement "lVar18 = lVar18 + *(long *)(lVar17 + 0x10);" (assignment_expression "lVar18 = lVar18 + *(long *)(lVar17 + 0x10)" identifier = (binary_expression "lVar18 + *(long *)(lVar17 + 0x10)" identifier + (pointer_expression "*(long *)(lVar17 + 0x10)" * (cast_expression "(long *)(lVar17 + 0x10)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x10)" ( (binary_expression "lVar17 + 0x10" identifier + number_literal) )))))) ;) })) }))) (if_statement "if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }" if (parenthesized_expression "(DAT_001e3b10 == 0)" ( (binary_expression "DAT_001e3b10 == 0" identifier == number_literal) )) (compound_statement "{\n                  iVar4 = 0x16b;\n                }" { (expression_statement "iVar4 = 0x16b;" (assignment_expression "iVar4 = 0x16b" identifier = number_literal) ;) }) (else_clause "else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }" else (if_statement "if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }" if (parenthesized_expression "(cVar25 == '\x04')" ( (binary_expression "cVar25 == '\x04'" identifier == (char_literal "'\x04'" ' escape_sequence ')) )) (compound_statement "{\n                  iVar4 = 0x18e;\n                }" { (expression_statement "iVar4 = 0x18e;" (assignment_expression "iVar4 = 0x18e" identifier = number_literal) ;) }) (else_clause "else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }" else (if_statement "if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }" if (parenthesized_expression "(cVar25 == '\b')" ( (binary_expression "cVar25 == '\b'" identifier == (char_literal "'\b'" ' escape_sequence ')) )) (compound_statement "{\n                  iVar4 = 0x191;\n                }" { (expression_statement "iVar4 = 0x191;" (assignment_expression "iVar4 = 0x191" identifier = number_literal) ;) })))))) (expression_statement "plVar14[2] = plVar14[2] + lVar26 + lVar18;" (assignment_expression "plVar14[2] = plVar14[2] + lVar26 + lVar18" (subscript_expression "plVar14[2]" identifier [ number_literal ]) = (binary_expression "plVar14[2] + lVar26 + lVar18" (binary_expression "plVar14[2] + lVar26" (subscript_expression "plVar14[2]" identifier [ number_literal ]) + identifier) + identifier)) ;) (goto_statement "goto LAB_00137fa9;" goto statement_identifier ;) })) (if_statement "if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }" if (parenthesized_expression "((char)plVar14[3] == '\x13')" ( (binary_expression "(char)plVar14[3] == '\x13'" (cast_expression "(char)plVar14[3]" ( (type_descriptor "char" primitive_type) ) (subscript_expression "plVar14[3]" identifier [ number_literal ])) == (char_literal "'\x13'" ' escape_sequence ')) )) (compound_statement "{\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }" { (expression_statement "lVar16 = FUN_0012bc00(plVar14[1]);" (assignment_expression "lVar16 = FUN_0012bc00(plVar14[1])" identifier = (call_expression "FUN_0012bc00(plVar14[1])" identifier (argument_list "(plVar14[1])" ( (subscript_expression "plVar14[1]" identifier [ number_literal ]) )))) ;) (expression_statement "plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];" (assignment_expression "plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14]" identifier = (cast_expression "(long *)(&DAT_001e3bc0)[uVar28 + 0x14]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "(&DAT_001e3bc0)[uVar28 + 0x14]" (parenthesized_expression "(&DAT_001e3bc0)" ( (pointer_expression "&DAT_001e3bc0" & identifier) )) [ (binary_expression "uVar28 + 0x14" identifier + number_literal) ]))) ;) (if_statement "if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;" if (parenthesized_expression "(*(char *)(lVar16 + 0x18) == '\x14')" ( (binary_expression "*(char *)(lVar16 + 0x18) == '\x14'" (pointer_expression "*(char *)(lVar16 + 0x18)" * (cast_expression "(char *)(lVar16 + 0x18)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar16 + 0x18)" ( (binary_expression "lVar16 + 0x18" identifier + number_literal) )))) == (char_literal "'\x14'" ' escape_sequence ')) )) (goto_statement "goto LAB_00138a92;" goto statement_identifier ;)) })) })) (expression_statement "lVar26 = lVar23 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar26 = lVar23 - (DAT_001e4648 + 0x80)" identifier = (binary_expression "lVar23 - (DAT_001e4648 + 0x80)" identifier - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) )))) ;) (expression_statement "lVar16 = DAT_001e4648;" (assignment_expression "lVar16 = DAT_001e4648" identifier = identifier) ;) }) (else_clause "else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }" else (compound_statement "{\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }" { (expression_statement "plVar14 = (&DAT_001e3c60)[uVar28];" (assignment_expression "plVar14 = (&DAT_001e3c60)[uVar28]" identifier = (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" ( (pointer_expression "&DAT_001e3c60" & identifier) )) [ identifier ])) ;) (expression_statement "lVar26 = lVar23 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar26 = lVar23 - (DAT_001e4648 + 0x80)" identifier = (binary_expression "lVar23 - (DAT_001e4648 + 0x80)" identifier - (parenthesized_expression "(DAT_001e4648 + 0x80)" ( (binary_expression "DAT_001e4648 + 0x80" identifier + number_literal) )))) ;) (expression_statement "lVar16 = DAT_001e4648;" (assignment_expression "lVar16 = DAT_001e4648" identifier = identifier) ;) }))) (labeled_statement "LAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);" statement_identifier : (expression_statement "FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);" (call_expression "FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23)" identifier (argument_list "(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23)" ( identifier , identifier , identifier , identifier , number_literal , identifier , identifier ))) ;)) }))) })) (expression_statement "uVar21 = (int)uVar28 + 1;" (assignment_expression "uVar21 = (int)uVar28 + 1" identifier = (binary_expression "(int)uVar28 + 1" (cast_expression "(int)uVar28" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "uVar28 = (ulong)uVar21;" (assignment_expression "uVar28 = (ulong)uVar21" identifier = (cast_expression "(ulong)uVar21" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) }) while (parenthesized_expression "(uVar21 < DAT_001e3c24)" ( (binary_expression "uVar21 < DAT_001e3c24" identifier < identifier) )) ;) })) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE) ))) (compound_statement { (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) * (char_literal ' escape_sequence '))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT != LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT != (char_literal ' escape_sequence '))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (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 IDENT + (char_literal ' escape_sequence '))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (char_literal ' escape_sequence '))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( (binary_expression IDENT + (char_literal ' escape_sequence ')) ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT | LIT)) ;) })) })) (if_statement if (parenthesized_expression ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - LIT) ))) < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (expression_statement (call_expression IDENT (argument_list ( LIT , LIT , IDENT , (binary_expression IDENT | IDENT) , IDENT , IDENT , IDENT ))) ;) (return_statement return ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (goto_statement goto statement_identifier ;) })))) (expression_statement (assignment_expression IDENT = LIT) ;) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT >> LIT) )))) ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , LIT , LIT , (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT == LIT) )))) & LIT) )) + LIT) )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + (parenthesized_expression ( (binary_expression LIT - (parenthesized_expression ( (binary_expression IDENT + LIT) ))) ))) , LIT , IDENT , LIT , IDENT ))) ;) (return_statement return ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + (parenthesized_expression ( (binary_expression LIT - (parenthesized_expression ( (binary_expression IDENT + LIT) ))) ))) , IDENT , IDENT , LIT , IDENT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (return_statement return ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) | LIT)) ;) (return_statement return ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT != LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT == LIT)) ;) }))) (expression_statement (assignment_expression IDENT = (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - (cast_expression ( (type_descriptor TYPE) ) (unary_expression ! IDENT))) & LIT) )) + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression (binary_expression IDENT + LIT) + IDENT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (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) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression LIT < IDENT) ))) )) && (parenthesized_expression ( (binary_expression LIT < (binary_expression IDENT + 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 ))) ;) (return_statement return ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , LIT , IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) - (parenthesized_expression ( (binary_expression IDENT + LIT) ))) , IDENT , IDENT , LIT , IDENT ))) ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;)) (return_statement return ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return ;) })) (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 ( (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) & LIT) )) == LIT) || (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) ))) )) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT ))))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ]) != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;)) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)))) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != LIT) )) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) = (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < IDENT) )) ;) })) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT ))) ;) (return_statement return ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( ))) ;)) })) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) || (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (goto_statement goto statement_identifier ;))) })) }))) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) && (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) && (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (do_statement do (compound_statement { (while_statement while (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression & IDENT)) )) (goto_statement goto statement_identifier ;)) })) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (pointer_expression & IDENT)) )) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) }) (else_clause else (compound_statement { (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 ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT >> LIT) )))) ;) }) (else_clause else (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 ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT >> LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT >> LIT) )))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT ))))) ;) }))))) (expression_statement (assignment_expression (pointer_expression * IDENT) = (cast_expression ( (type_descriptor TYPE) ) (parenthesized_expression ( (binary_expression IDENT >> LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) })))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) && (parenthesized_expression ( (comma_expression (call_expression IDENT (argument_list ( (binary_expression (binary_expression (binary_expression IDENT * LIT) | (binary_expression IDENT << LIT)) | IDENT) ))) , (binary_expression IDENT == LIT)) ))) )) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) == LIT) ))) )) ))) )) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (binary_expression (binary_expression (binary_expression IDENT * LIT) | (binary_expression IDENT << LIT)) | IDENT) ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (pointer_expression & IDENT)) + (binary_expression IDENT * LIT)) + LIT) )))) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ]))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (pointer_expression & IDENT)) + (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) * LIT)) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - (parenthesized_expression ( (binary_expression IDENT == LIT) ))) & LIT) )) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - (parenthesized_expression ( (binary_expression IDENT == LIT) ))) & LIT) )) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) }))) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) }))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;)) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (pointer_expression & IDENT)) + (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) * LIT)) + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) ))) & LIT) )) + LIT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ])) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) }))) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT >> LIT) ))) & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (pointer_expression & IDENT)) + (binary_expression IDENT * LIT)) + LIT) )))) & LIT) )) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT != (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (pointer_expression & IDENT)) + (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) * LIT)) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (unary_expression - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT == LIT) )))) & LIT) ))) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - (parenthesized_expression ( (binary_expression IDENT == LIT) ))) & LIT) )) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) }))))) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) - IDENT)) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < IDENT) )) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , (binary_expression IDENT & LIT) , (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ]) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * IDENT)) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) != (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ])) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) })) (goto_statement goto statement_identifier ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (unary_expression - IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (for_statement for ( (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ; (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (binary_expression IDENT != IDENT) ))) )) ; (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) })) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT == LIT) ))) * LIT) + LIT)) ;) }))) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;)) }))) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , IDENT , IDENT , IDENT ))))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT == LIT) && (binary_expression IDENT == LIT)) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;))) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) & LIT) )) != LIT) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return ;) })) (goto_statement goto statement_identifier ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) || (parenthesized_expression ( (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) ))) )) ))) )) (goto_statement goto statement_identifier ;))))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) | LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (pointer_expression * IDENT) & LIT) | (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) * (char_literal ' escape_sequence ')))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression LIT < (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression IDENT | LIT)) ;) })) }))) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)))))) })) }))) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < IDENT) )) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT != LIT) ))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (pointer_expression & IDENT)) + (binary_expression (parenthesized_expression ( (binary_expression IDENT + LIT) )) * LIT)) + LIT) )))) & LIT) )) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (pointer_expression & IDENT)) + (binary_expression (parenthesized_expression ( (binary_expression IDENT + LIT) )) * LIT)) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ])) + LIT) )))) == (char_literal ' escape_sequence ')) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - (parenthesized_expression ( (binary_expression IDENT == LIT) ))) & LIT) )) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - (parenthesized_expression ( (binary_expression IDENT == LIT) ))) & LIT) )) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) }))))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ])) + LIT) )))) , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT ))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) < (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - (parenthesized_expression ( (binary_expression IDENT == LIT) ))) & LIT) )) + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (unary_expression - (parenthesized_expression ( (binary_expression IDENT == LIT) ))) & LIT) )) + LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) (expression_statement (assignment_expression IDENT = (char_literal ' escape_sequence ')) ;) }))))) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (pointer_expression & IDENT)) + (binary_expression IDENT * LIT)) + LIT) )))) & LIT) )) != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression IDENT != (char_literal ' character '))) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = LIT) , (binary_expression IDENT == (char_literal ' escape_sequence '))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT >> LIT) & LIT)) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT , IDENT , (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ]) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) < LIT) )) || (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ (binary_expression IDENT + LIT) ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * IDENT)) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (unary_expression - IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (for_statement for ( (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ; (parenthesized_expression ( (binary_expression (binary_expression IDENT != LIT) && (parenthesized_expression ( (binary_expression IDENT != IDENT) ))) )) ; (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) })) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })))))) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT) + IDENT)) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ (binary_expression IDENT + LIT) ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == (char_literal ' escape_sequence ')) )) (goto_statement goto statement_identifier ;)) })) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT , LIT , IDENT , IDENT ))) ;)) }))) })) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT < IDENT) )) ;) })) (return_statement return ;) })))
(function_definition "void FUN_001379a0(void)\n\n{\n  long lVar1;\n  byte bVar2;\n  byte bVar3;\n  int iVar4;\n  undefined4 uVar5;\n  long lVar6;\n  undefined1 *puVar7;\n  byte *pbVar8;\n  ulong uVar9;\n  undefined1 *puVar10;\n  undefined8 uVar11;\n  undefined8 uVar12;\n  byte *pbVar13;\n  long *plVar14;\n  byte bVar15;\n  long lVar16;\n  long lVar17;\n  long lVar18;\n  char cVar19;\n  int iVar20;\n  uint uVar21;\n  uint uVar22;\n  long lVar23;\n  char *pcVar24;\n  char cVar25;\n  long lVar26;\n  char cVar27;\n  ulong uVar28;\n  bool bVar29;\n  ulong uVar30;\n  \n  FUN_0010e9f0(0);\n  lVar1 = DAT_001e4648;\n  lVar6 = FUN_001171d0();\n  iVar4 = DAT_001e3c9c;\n  if ((DAT_001e3be8 & 0x20) != 0) {\n    bVar15 = (DAT_001e3d40 == 2) * '\x02';\n    if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }\n    cVar25 = DAT_001e3ce7 != '\0';\n    cVar27 = cVar19;\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }\n    cVar19 = cVar27;\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    FUN_00116e70(cVar25 + '\x06');\n    pbVar8 = (byte *)FUN_00116fb0(cVar19);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }\n    bVar2 = (byte)DAT_001e3bcc;\n    *pbVar8 = bVar2;\n    bVar3 = bVar15;\n    if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }\n    if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }\n    FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);\n    return;\n  }\n  if ((DAT_001e3be8 & 0xc0) != 0) {\n    if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }\nLAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);\n    puVar10 = puVar7;\n    if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }\n    *puVar10 = (char)DAT_001e3bcc;\n    if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }\n    uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);\n    pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);\n    if (iVar20 != 1) {\n      return;\n    }\n    *pbVar8 = *pbVar8 | 0x80;\n    return;\n  }\n  if ((DAT_001e3be9 & 1) != 0) {\n    if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }\n    uVar21 = (uint)(DAT_001e3ce7 != '\0');\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }\n    iVar4 = (-(uint)!bVar29 & 2) + 2;\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    pbVar13 = pbVar8 + 1;\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }\n    *pbVar8 = (byte)DAT_001e3bcc;\n    if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }\n    uVar11 = DAT_001e3bc0;\n    if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }\n    uVar11 = DAT_001e3c60[2];\n    uVar12 = 2;\n    pbVar13 = pbVar13 + iVar4;\nLAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);\n    return;\n  }\n  if ((DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae)) {\n    if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }\n  }\n  else {\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }\n  if ((_DAT_001e3bec & 0x7000600) != 0) {\n    lVar23 = 0;\n    do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);\n    if (DAT_001e3cfc != 0) {\n                    \n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    lVar23 = FUN_00116fb0(DAT_001e3d14);\n    if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }\n    goto LAB_00137e10;\n  }\n  if (DAT_001e3bd4 != 1) {\n    if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }\n    if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }\n  }\n  if ((((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0)) {\n    FUN_00131f90(0x40);\n  }\n  pcVar24 = &DAT_001e3ce4;\n  do {\n    while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }\n    FUN_00117220();\n    pcVar24 = pcVar24 + 1;\n  } while (pcVar24 != &DAT_001e3ceb);\nLAB_00137e10:\n  if (DAT_001e3bd4 == 1) {\n    FUN_00117220(DAT_001e3bcc);\n  }\n  else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }\n  if ((((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))\n     ) {\n    FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);\n  }\n  if (DAT_001e3c2c != 0) {\n    if (DAT_001e3c24 == 0) {\n      return;\n    }\n    uVar28 = 0;\n    uVar21 = DAT_001e3c24;\n    do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);\n  }\n  if ((DAT_001e3c34 != 0) && (DAT_001e3c24 != 0)) {\nLAB_00137e9a:\n    uVar28 = 0;\n    do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);\n  }\n  return;\n}" (primitive_type "void") (function_declarator "FUN_001379a0(void)" (identifier "FUN_001379a0") (parameter_list "(void)" (( "(") (parameter_declaration "void" (primitive_type "void")) () ")"))) (compound_statement "{\n  long lVar1;\n  byte bVar2;\n  byte bVar3;\n  int iVar4;\n  undefined4 uVar5;\n  long lVar6;\n  undefined1 *puVar7;\n  byte *pbVar8;\n  ulong uVar9;\n  undefined1 *puVar10;\n  undefined8 uVar11;\n  undefined8 uVar12;\n  byte *pbVar13;\n  long *plVar14;\n  byte bVar15;\n  long lVar16;\n  long lVar17;\n  long lVar18;\n  char cVar19;\n  int iVar20;\n  uint uVar21;\n  uint uVar22;\n  long lVar23;\n  char *pcVar24;\n  char cVar25;\n  long lVar26;\n  char cVar27;\n  ulong uVar28;\n  bool bVar29;\n  ulong uVar30;\n  \n  FUN_0010e9f0(0);\n  lVar1 = DAT_001e4648;\n  lVar6 = FUN_001171d0();\n  iVar4 = DAT_001e3c9c;\n  if ((DAT_001e3be8 & 0x20) != 0) {\n    bVar15 = (DAT_001e3d40 == 2) * '\x02';\n    if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }\n    cVar25 = DAT_001e3ce7 != '\0';\n    cVar27 = cVar19;\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }\n    cVar19 = cVar27;\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    FUN_00116e70(cVar25 + '\x06');\n    pbVar8 = (byte *)FUN_00116fb0(cVar19);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }\n    bVar2 = (byte)DAT_001e3bcc;\n    *pbVar8 = bVar2;\n    bVar3 = bVar15;\n    if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }\n    if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }\n    FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);\n    return;\n  }\n  if ((DAT_001e3be8 & 0xc0) != 0) {\n    if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }\nLAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);\n    puVar10 = puVar7;\n    if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }\n    *puVar10 = (char)DAT_001e3bcc;\n    if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }\n    uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);\n    pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);\n    if (iVar20 != 1) {\n      return;\n    }\n    *pbVar8 = *pbVar8 | 0x80;\n    return;\n  }\n  if ((DAT_001e3be9 & 1) != 0) {\n    if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }\n    uVar21 = (uint)(DAT_001e3ce7 != '\0');\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }\n    iVar4 = (-(uint)!bVar29 & 2) + 2;\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    pbVar13 = pbVar8 + 1;\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }\n    *pbVar8 = (byte)DAT_001e3bcc;\n    if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }\n    uVar11 = DAT_001e3bc0;\n    if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }\n    uVar11 = DAT_001e3c60[2];\n    uVar12 = 2;\n    pbVar13 = pbVar13 + iVar4;\nLAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);\n    return;\n  }\n  if ((DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae)) {\n    if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }\n  }\n  else {\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }\n  if ((_DAT_001e3bec & 0x7000600) != 0) {\n    lVar23 = 0;\n    do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);\n    if (DAT_001e3cfc != 0) {\n                    \n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    lVar23 = FUN_00116fb0(DAT_001e3d14);\n    if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }\n    goto LAB_00137e10;\n  }\n  if (DAT_001e3bd4 != 1) {\n    if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }\n    if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }\n  }\n  if ((((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0)) {\n    FUN_00131f90(0x40);\n  }\n  pcVar24 = &DAT_001e3ce4;\n  do {\n    while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }\n    FUN_00117220();\n    pcVar24 = pcVar24 + 1;\n  } while (pcVar24 != &DAT_001e3ceb);\nLAB_00137e10:\n  if (DAT_001e3bd4 == 1) {\n    FUN_00117220(DAT_001e3bcc);\n  }\n  else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }\n  if ((((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))\n     ) {\n    FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);\n  }\n  if (DAT_001e3c2c != 0) {\n    if (DAT_001e3c24 == 0) {\n      return;\n    }\n    uVar28 = 0;\n    uVar21 = DAT_001e3c24;\n    do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);\n  }\n  if ((DAT_001e3c34 != 0) && (DAT_001e3c24 != 0)) {\nLAB_00137e9a:\n    uVar28 = 0;\n    do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);\n  }\n  return;\n}" ({ "{") (declaration "long lVar1;" (sized_type_specifier "long" (long "long")) (identifier "lVar1") (; ";")) (declaration "byte bVar2;" (type_identifier "byte") (identifier "bVar2") (; ";")) (declaration "byte bVar3;" (type_identifier "byte") (identifier "bVar3") (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (declaration "undefined4 uVar5;" (type_identifier "undefined4") (identifier "uVar5") (; ";")) (declaration "long lVar6;" (sized_type_specifier "long" (long "long")) (identifier "lVar6") (; ";")) (declaration "undefined1 *puVar7;" (type_identifier "undefined1") (pointer_declarator "*puVar7" (* "*") (identifier "puVar7")) (; ";")) (declaration "byte *pbVar8;" (type_identifier "byte") (pointer_declarator "*pbVar8" (* "*") (identifier "pbVar8")) (; ";")) (declaration "ulong uVar9;" (type_identifier "ulong") (identifier "uVar9") (; ";")) (declaration "undefined1 *puVar10;" (type_identifier "undefined1") (pointer_declarator "*puVar10" (* "*") (identifier "puVar10")) (; ";")) (declaration "undefined8 uVar11;" (type_identifier "undefined8") (identifier "uVar11") (; ";")) (declaration "undefined8 uVar12;" (type_identifier "undefined8") (identifier "uVar12") (; ";")) (declaration "byte *pbVar13;" (type_identifier "byte") (pointer_declarator "*pbVar13" (* "*") (identifier "pbVar13")) (; ";")) (declaration "long *plVar14;" (sized_type_specifier "long" (long "long")) (pointer_declarator "*plVar14" (* "*") (identifier "plVar14")) (; ";")) (declaration "byte bVar15;" (type_identifier "byte") (identifier "bVar15") (; ";")) (declaration "long lVar16;" (sized_type_specifier "long" (long "long")) (identifier "lVar16") (; ";")) (declaration "long lVar17;" (sized_type_specifier "long" (long "long")) (identifier "lVar17") (; ";")) (declaration "long lVar18;" (sized_type_specifier "long" (long "long")) (identifier "lVar18") (; ";")) (declaration "char cVar19;" (primitive_type "char") (identifier "cVar19") (; ";")) (declaration "int iVar20;" (primitive_type "int") (identifier "iVar20") (; ";")) (declaration "uint uVar21;" (type_identifier "uint") (identifier "uVar21") (; ";")) (declaration "uint uVar22;" (type_identifier "uint") (identifier "uVar22") (; ";")) (declaration "long lVar23;" (sized_type_specifier "long" (long "long")) (identifier "lVar23") (; ";")) (declaration "char *pcVar24;" (primitive_type "char") (pointer_declarator "*pcVar24" (* "*") (identifier "pcVar24")) (; ";")) (declaration "char cVar25;" (primitive_type "char") (identifier "cVar25") (; ";")) (declaration "long lVar26;" (sized_type_specifier "long" (long "long")) (identifier "lVar26") (; ";")) (declaration "char cVar27;" (primitive_type "char") (identifier "cVar27") (; ";")) (declaration "ulong uVar28;" (type_identifier "ulong") (identifier "uVar28") (; ";")) (declaration "bool bVar29;" (primitive_type "bool") (identifier "bVar29") (; ";")) (declaration "ulong uVar30;" (type_identifier "ulong") (identifier "uVar30") (; ";")) (expression_statement "FUN_0010e9f0(0);" (call_expression "FUN_0010e9f0(0)" (identifier "FUN_0010e9f0") (argument_list "(0)" (( "(") (number_literal "0") () ")"))) (; ";")) (expression_statement "lVar1 = DAT_001e4648;" (assignment_expression "lVar1 = DAT_001e4648" (identifier "lVar1") (= "=") (identifier "DAT_001e4648")) (; ";")) (expression_statement "lVar6 = FUN_001171d0();" (assignment_expression "lVar6 = FUN_001171d0()" (identifier "lVar6") (= "=") (call_expression "FUN_001171d0()" (identifier "FUN_001171d0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar4 = DAT_001e3c9c;" (assignment_expression "iVar4 = DAT_001e3c9c" (identifier "iVar4") (= "=") (identifier "DAT_001e3c9c")) (; ";")) (if_statement "if ((DAT_001e3be8 & 0x20) != 0) {\n    bVar15 = (DAT_001e3d40 == 2) * '\x02';\n    if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }\n    cVar25 = DAT_001e3ce7 != '\0';\n    cVar27 = cVar19;\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }\n    cVar19 = cVar27;\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    FUN_00116e70(cVar25 + '\x06');\n    pbVar8 = (byte *)FUN_00116fb0(cVar19);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }\n    bVar2 = (byte)DAT_001e3bcc;\n    *pbVar8 = bVar2;\n    bVar3 = bVar15;\n    if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }\n    if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }\n    FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);\n    return;\n  }" (if "if") (parenthesized_expression "((DAT_001e3be8 & 0x20) != 0)" (( "(") (binary_expression "(DAT_001e3be8 & 0x20) != 0" (parenthesized_expression "(DAT_001e3be8 & 0x20)" (( "(") (binary_expression "DAT_001e3be8 & 0x20" (identifier "DAT_001e3be8") (& "&") (number_literal "0x20")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    bVar15 = (DAT_001e3d40 == 2) * '\x02';\n    if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }\n    cVar25 = DAT_001e3ce7 != '\0';\n    cVar27 = cVar19;\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }\n    cVar19 = cVar27;\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    FUN_00116e70(cVar25 + '\x06');\n    pbVar8 = (byte *)FUN_00116fb0(cVar19);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }\n    bVar2 = (byte)DAT_001e3bcc;\n    *pbVar8 = bVar2;\n    bVar3 = bVar15;\n    if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }\n    if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }\n    FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);\n    return;\n  }" ({ "{") (expression_statement "bVar15 = (DAT_001e3d40 == 2) * '\x02';" (assignment_expression "bVar15 = (DAT_001e3d40 == 2) * '\x02'" (identifier "bVar15") (= "=") (binary_expression "(DAT_001e3d40 == 2) * '\x02'" (parenthesized_expression "(DAT_001e3d40 == 2)" (( "(") (binary_expression "DAT_001e3d40 == 2" (identifier "DAT_001e3d40") (== "==") (number_literal "2")) () ")")) (* "*") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'")))) (; ";")) (if_statement "if (DAT_001e3ce7 != '\0') {\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }" (if "if") (parenthesized_expression "(DAT_001e3ce7 != '\0')" (( "(") (binary_expression "DAT_001e3ce7 != '\0'" (identifier "DAT_001e3ce7") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      cVar19 = '\x02';\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }" ({ "{") (expression_statement "cVar19 = '\x02';" (assignment_expression "cVar19 = '\x02'" (identifier "cVar19") (= "=") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'"))) (; ";")) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (= "=") (binary_expression "DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar29 = DAT_001e3b14 != 1;" (assignment_expression "bVar29 = DAT_001e3b14 != 1" (identifier "bVar29") (= "=") (binary_expression "DAT_001e3b14 != 1" (identifier "DAT_001e3b14") (!= "!=") (number_literal "1"))) (; ";")) (} "}")) (else_clause "else {\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }" (else "else") (compound_statement "{\n      bVar29 = DAT_001e3b14 == 1;\n      cVar19 = '\x01';\n    }" ({ "{") (expression_statement "bVar29 = DAT_001e3b14 == 1;" (assignment_expression "bVar29 = DAT_001e3b14 == 1" (identifier "bVar29") (= "=") (binary_expression "DAT_001e3b14 == 1" (identifier "DAT_001e3b14") (== "==") (number_literal "1"))) (; ";")) (expression_statement "cVar19 = '\x01';" (assignment_expression "cVar19 = '\x01'" (identifier "cVar19") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (} "}")))) (expression_statement "cVar25 = DAT_001e3ce7 != '\0';" (assignment_expression "cVar25 = DAT_001e3ce7 != '\0'" (identifier "cVar25") (= "=") (binary_expression "DAT_001e3ce7 != '\0'" (identifier "DAT_001e3ce7") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) (; ";")) (expression_statement "cVar27 = cVar19;" (assignment_expression "cVar27 = cVar19" (identifier "cVar27") (= "=") (identifier "cVar19")) (; ";")) (if_statement "if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }" (if "if") (parenthesized_expression "((DAT_001e3ce5 & 0xef) == 0x2e)" (( "(") (binary_expression "(DAT_001e3ce5 & 0xef) == 0x2e" (parenthesized_expression "(DAT_001e3ce5 & 0xef)" (( "(") (binary_expression "DAT_001e3ce5 & 0xef" (identifier "DAT_001e3ce5") (& "&") (number_literal "0xef")) () ")")) (== "==") (number_literal "0x2e")) () ")")) (compound_statement "{\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar27 = cVar19 + '\x01';\n      cVar25 = cVar19;\n    }" ({ "{") (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (= "=") (binary_expression "DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "cVar27 = cVar19 + '\x01';" (assignment_expression "cVar27 = cVar19 + '\x01'" (identifier "cVar27") (= "=") (binary_expression "cVar19 + '\x01'" (identifier "cVar19") (+ "+") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'")))) (; ";")) (expression_statement "cVar25 = cVar19;" (assignment_expression "cVar25 = cVar19" (identifier "cVar25") (= "=") (identifier "cVar19")) (; ";")) (} "}"))) (expression_statement "cVar19 = cVar27;" (assignment_expression "cVar19 = cVar27" (identifier "cVar19") (= "=") (identifier "cVar27")) (; ";")) (if_statement "if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }" (if "if") (parenthesized_expression "(DAT_001e3cea != 0)" (( "(") (binary_expression "DAT_001e3cea != 0" (identifier "DAT_001e3cea") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      cVar19 = cVar27 + '\x01';\n      cVar25 = cVar27;\n    }" ({ "{") (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (= "=") (binary_expression "DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "cVar19 = cVar27 + '\x01';" (assignment_expression "cVar19 = cVar27 + '\x01'" (identifier "cVar19") (= "=") (binary_expression "cVar27 + '\x01'" (identifier "cVar27") (+ "+") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'")))) (; ";")) (expression_statement "cVar25 = cVar27;" (assignment_expression "cVar25 = cVar27" (identifier "cVar25") (= "=") (identifier "cVar27")) (; ";")) (} "}"))) (if_statement "if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" (if "if") (parenthesized_expression "(DAT_001e3ce8 != '\0')" (( "(") (binary_expression "DAT_001e3ce8 != '\0'" (identifier "DAT_001e3ce8") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" ({ "{") (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" (identifier "FUN_00117220") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (= "=") (binary_expression "DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (+ "+") (number_literal "-1"))) (; ";")) (} "}"))) (if_statement "if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" (if "if") (parenthesized_expression "((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0))" (( "(") (binary_expression "(DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)" (parenthesized_expression "(DAT_001e3ce0 != 0)" (( "(") (binary_expression "DAT_001e3ce0 != 0" (identifier "DAT_001e3ce0") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(DAT_001e3afc == 0)" (( "(") (binary_expression "DAT_001e3afc == 0" (identifier "DAT_001e3afc") (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" ({ "{") (expression_statement "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);" (assignment_expression "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"skipping prefixes on this instruction",5)" (identifier "dcgettext") (argument_list "(0,"skipping prefixes on this instruction",5)" (( "(") (number_literal "0") (, ",") (string_literal ""skipping prefixes on this instruction"" (" """) (string_content "skipping prefixes on this instruction") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011d8a0(uVar11);" (call_expression "FUN_0011d8a0(uVar11)" (identifier "FUN_0011d8a0") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (} "}"))) (expression_statement "FUN_00116e70(cVar25 + '\x06');" (call_expression "FUN_00116e70(cVar25 + '\x06')" (identifier "FUN_00116e70") (argument_list "(cVar25 + '\x06')" (( "(") (binary_expression "cVar25 + '\x06'" (identifier "cVar25") (+ "+") (char_literal "'\x06'" (' "'") (escape_sequence "\x06") (' "'"))) () ")"))) (; ";")) (expression_statement "pbVar8 = (byte *)FUN_00116fb0(cVar19);" (assignment_expression "pbVar8 = (byte *)FUN_00116fb0(cVar19)" (identifier "pbVar8") (= "=") (cast_expression "(byte *)FUN_00116fb0(cVar19)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00116fb0(cVar19)" (identifier "FUN_00116fb0") (argument_list "(cVar19)" (( "(") (identifier "cVar19") () ")"))))) (; ";")) (if_statement "if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }" (if "if") (parenthesized_expression "(DAT_001e3ce7 != '\0')" (( "(") (binary_expression "DAT_001e3ce7 != '\0'" (identifier "DAT_001e3ce7") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }" ({ "{") (expression_statement "*pbVar8 = 0x66;" (assignment_expression "*pbVar8 = 0x66" (pointer_expression "*pbVar8" (* "*") (identifier "pbVar8")) (= "=") (number_literal "0x66")) (; ";")) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" (identifier "pbVar8") (= "=") (binary_expression "pbVar8 + 1" (identifier "pbVar8") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (if_statement "if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }" (if "if") (parenthesized_expression "((DAT_001e3ce5 & 0xef) == 0x2e)" (( "(") (binary_expression "(DAT_001e3ce5 & 0xef) == 0x2e" (parenthesized_expression "(DAT_001e3ce5 & 0xef)" (( "(") (binary_expression "DAT_001e3ce5 & 0xef" (identifier "DAT_001e3ce5") (& "&") (number_literal "0xef")) () ")")) (== "==") (number_literal "0x2e")) () ")")) (compound_statement "{\n      *pbVar8 = DAT_001e3ce5;\n      pbVar8 = pbVar8 + 1;\n    }" ({ "{") (expression_statement "*pbVar8 = DAT_001e3ce5;" (assignment_expression "*pbVar8 = DAT_001e3ce5" (pointer_expression "*pbVar8" (* "*") (identifier "pbVar8")) (= "=") (identifier "DAT_001e3ce5")) (; ";")) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" (identifier "pbVar8") (= "=") (binary_expression "pbVar8 + 1" (identifier "pbVar8") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (if_statement "if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }" (if "if") (parenthesized_expression "(DAT_001e3cea != 0)" (( "(") (binary_expression "DAT_001e3cea != 0" (identifier "DAT_001e3cea") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      *pbVar8 = DAT_001e3cea;\n      pbVar8 = pbVar8 + 1;\n    }" ({ "{") (expression_statement "*pbVar8 = DAT_001e3cea;" (assignment_expression "*pbVar8 = DAT_001e3cea" (pointer_expression "*pbVar8" (* "*") (identifier "pbVar8")) (= "=") (identifier "DAT_001e3cea")) (; ";")) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" (identifier "pbVar8") (= "=") (binary_expression "pbVar8 + 1" (identifier "pbVar8") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "bVar2 = (byte)DAT_001e3bcc;" (assignment_expression "bVar2 = (byte)DAT_001e3bcc" (identifier "bVar2") (= "=") (cast_expression "(byte)DAT_001e3bcc" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "DAT_001e3bcc"))) (; ";")) (expression_statement "*pbVar8 = bVar2;" (assignment_expression "*pbVar8 = bVar2" (pointer_expression "*pbVar8" (* "*") (identifier "pbVar8")) (= "=") (identifier "bVar2")) (; ";")) (expression_statement "bVar3 = bVar15;" (assignment_expression "bVar3 = bVar15" (identifier "bVar3") (= "=") (identifier "bVar15")) (; ";")) (if_statement "if (bVar2 != 0xeb) {\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }" (if "if") (parenthesized_expression "(bVar2 != 0xeb)" (( "(") (binary_expression "bVar2 != 0xeb" (identifier "bVar2") (!= "!=") (number_literal "0xeb")) () ")")) (compound_statement "{\n      bVar3 = bVar15 | 8;\n      if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }\n    }" ({ "{") (expression_statement "bVar3 = bVar15 | 8;" (assignment_expression "bVar3 = bVar15 | 8" (identifier "bVar3") (= "=") (binary_expression "bVar15 | 8" (identifier "bVar15") (| "|") (number_literal "8"))) (; ";")) (if_statement "if (((byte)DAT_001da770 & 4) != 0) {\n        bVar3 = bVar15 | 4;\n      }" (if "if") (parenthesized_expression "(((byte)DAT_001da770 & 4) != 0)" (( "(") (binary_expression "((byte)DAT_001da770 & 4) != 0" (parenthesized_expression "((byte)DAT_001da770 & 4)" (( "(") (binary_expression "(byte)DAT_001da770 & 4" (cast_expression "(byte)DAT_001da770" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "DAT_001da770")) (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        bVar3 = bVar15 | 4;\n      }" ({ "{") (expression_statement "bVar3 = bVar15 | 4;" (assignment_expression "bVar3 = bVar15 | 4" (identifier "bVar3") (= "=") (binary_expression "bVar15 | 4" (identifier "bVar15") (| "|") (number_literal "4"))) (; ";")) (} "}"))) (} "}"))) (if_statement "if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }\n    else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }" (if "if") (parenthesized_expression "((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2)" (( "(") (binary_expression "(byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2" (call_expression "(byte)(*(char *)(DAT_001e3c60 + 3) - 2U)" (parenthesized_expression "(byte)" (( "(") (identifier "byte") () ")")) (argument_list "(*(char *)(DAT_001e3c60 + 3) - 2U)" (( "(") (binary_expression "*(char *)(DAT_001e3c60 + 3) - 2U" (pointer_expression "*(char *)(DAT_001e3c60 + 3)" (* "*") (cast_expression "(char *)(DAT_001e3c60 + 3)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_001e3c60 + 3)" (( "(") (binary_expression "DAT_001e3c60 + 3" (identifier "DAT_001e3c60") (+ "+") (number_literal "3")) () ")")))) (- "-") (number_literal "2U")) () ")"))) (< "<") (number_literal "2")) () ")")) (compound_statement "{\n      uVar11 = *DAT_001e3c60;\n      uVar12 = DAT_001e3c60[2];\n    }" ({ "{") (expression_statement "uVar11 = *DAT_001e3c60;" (assignment_expression "uVar11 = *DAT_001e3c60" (identifier "uVar11") (= "=") (pointer_expression "*DAT_001e3c60" (* "*") (identifier "DAT_001e3c60"))) (; ";")) (expression_statement "uVar12 = DAT_001e3c60[2];" (assignment_expression "uVar12 = DAT_001e3c60[2]" (identifier "uVar12") (= "=") (subscript_expression "DAT_001e3c60[2]" (identifier "DAT_001e3c60") ([ "[") (number_literal "2") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }" (else "else") (compound_statement "{\n      uVar11 = FUN_00113ee0();\n      uVar12 = 0;\n    }" ({ "{") (expression_statement "uVar11 = FUN_00113ee0();" (assignment_expression "uVar11 = FUN_00113ee0()" (identifier "uVar11") (= "=") (call_expression "FUN_00113ee0()" (identifier "FUN_00113ee0") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" (identifier "uVar12") (= "=") (number_literal "0")) (; ";")) (} "}")))) (expression_statement "FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);" (call_expression "FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8)" (identifier "FUN_00116fe0") (argument_list "(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8)" (( "(") (number_literal "7") (, ",") (number_literal "5") (, ",") (identifier "DAT_001e3c9c") (, ",") (binary_expression "bVar3 | bVar29" (identifier "bVar3") (| "|") (identifier "bVar29")) (, ",") (identifier "uVar11") (, ",") (identifier "uVar12") (, ",") (identifier "pbVar8") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (if_statement "if ((DAT_001e3be8 & 0xc0) != 0) {\n    if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }\nLAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);\n    puVar10 = puVar7;\n    if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }\n    *puVar10 = (char)DAT_001e3bcc;\n    if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }\n    uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);\n    pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);\n    if (iVar20 != 1) {\n      return;\n    }\n    *pbVar8 = *pbVar8 | 0x80;\n    return;\n  }" (if "if") (parenthesized_expression "((DAT_001e3be8 & 0xc0) != 0)" (( "(") (binary_expression "(DAT_001e3be8 & 0xc0) != 0" (parenthesized_expression "(DAT_001e3be8 & 0xc0)" (( "(") (binary_expression "DAT_001e3be8 & 0xc0" (identifier "DAT_001e3be8") (& "&") (number_literal "0xc0")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }\nLAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);\n    puVar10 = puVar7;\n    if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }\n    *puVar10 = (char)DAT_001e3bcc;\n    if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }\n    uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);\n    pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);\n    if (iVar20 != 1) {\n      return;\n    }\n    *pbVar8 = *pbVar8 | 0x80;\n    return;\n  }" ({ "{") (if_statement "if ((char)DAT_001e3be8 < '\0') {\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }\n    else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }" (if "if") (parenthesized_expression "((char)DAT_001e3be8 < '\0')" (( "(") (binary_expression "(char)DAT_001e3be8 < '\0'" (cast_expression "(char)DAT_001e3be8" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "DAT_001e3be8")) (< "<") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      iVar20 = 1;\n      if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n    }" ({ "{") (if_statement "if (DAT_001e3ce6 != '\0') {\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }" (if "if") (parenthesized_expression "(DAT_001e3ce6 != '\0')" (( "(") (binary_expression "DAT_001e3ce6 != '\0'" (identifier "DAT_001e3ce6") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        FUN_00117220(0x67);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }" ({ "{") (expression_statement "FUN_00117220(0x67);" (call_expression "FUN_00117220(0x67)" (identifier "FUN_00117220") (argument_list "(0x67)" (( "(") (number_literal "0x67") () ")"))) (; ";")) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (= "=") (binary_expression "DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (+ "+") (number_literal "-1"))) (; ";")) (} "}"))) (expression_statement "iVar20 = 1;" (assignment_expression "iVar20 = 1" (identifier "iVar20") (= "=") (number_literal "1")) (; ";")) (if_statement "if ((DAT_001e3ce5 & 0xef) == 0x2e) {\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }" (if "if") (parenthesized_expression "((DAT_001e3ce5 & 0xef) == 0x2e)" (( "(") (binary_expression "(DAT_001e3ce5 & 0xef) == 0x2e" (parenthesized_expression "(DAT_001e3ce5 & 0xef)" (( "(") (binary_expression "DAT_001e3ce5 & 0xef" (identifier "DAT_001e3ce5") (& "&") (number_literal "0xef")) () ")")) (== "==") (number_literal "0x2e")) () ")")) (compound_statement "{\n        FUN_00117220();\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }" ({ "{") (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" (identifier "FUN_00117220") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (= "=") (binary_expression "DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (+ "+") (number_literal "-1"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }" (else "else") (compound_statement "{\n      if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }\n      iVar20 = 4;\n    }" ({ "{") (if_statement "if (DAT_001e3b14 == 1) {\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }\n      else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }" (if "if") (parenthesized_expression "(DAT_001e3b14 == 1)" (( "(") (binary_expression "DAT_001e3b14 == 1" (identifier "DAT_001e3b14") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n        if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      }" ({ "{") (if_statement "if (DAT_001e3ce7 == '\0') {\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }" (if "if") (parenthesized_expression "(DAT_001e3ce7 == '\0')" (( "(") (binary_expression "DAT_001e3ce7 == '\0'" (identifier "DAT_001e3ce7") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n          iVar20 = 2;\n          goto LAB_00137acf;\n        }" ({ "{") (expression_statement "iVar20 = 2;" (assignment_expression "iVar20 = 2" (identifier "iVar20") (= "=") (number_literal "2")) (; ";")) (goto_statement "goto LAB_00137acf;" (goto "goto") (statement_identifier "LAB_00137acf") (; ";")) (} "}"))) (expression_statement "FUN_00117220(0x66);" (call_expression "FUN_00117220(0x66)" (identifier "FUN_00117220") (argument_list "(0x66)" (( "(") (number_literal "0x66") () ")"))) (; ";")) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (= "=") (binary_expression "DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (+ "+") (number_literal "-1"))) (; ";")) (} "}")) (else_clause "else if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }" (else "else") (if_statement "if (DAT_001e3ce7 != '\0') {\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }" (if "if") (parenthesized_expression "(DAT_001e3ce7 != '\0')" (( "(") (binary_expression "DAT_001e3ce7 != '\0'" (identifier "DAT_001e3ce7") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        iVar20 = 2;\n        FUN_00117220(0x66);\n        DAT_001e3ce0 = DAT_001e3ce0 + -1;\n        goto LAB_00137acf;\n      }" ({ "{") (expression_statement "iVar20 = 2;" (assignment_expression "iVar20 = 2" (identifier "iVar20") (= "=") (number_literal "2")) (; ";")) (expression_statement "FUN_00117220(0x66);" (call_expression "FUN_00117220(0x66)" (identifier "FUN_00117220") (argument_list "(0x66)" (( "(") (number_literal "0x66") () ")"))) (; ";")) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (= "=") (binary_expression "DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (+ "+") (number_literal "-1"))) (; ";")) (goto_statement "goto LAB_00137acf;" (goto "goto") (statement_identifier "LAB_00137acf") (; ";")) (} "}"))))) (expression_statement "iVar20 = 4;" (assignment_expression "iVar20 = 4" (identifier "iVar20") (= "=") (number_literal "4")) (; ";")) (} "}")))) (labeled_statement "LAB_00137acf:\n    if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" (statement_identifier "LAB_00137acf") (: ":") (if_statement "if (DAT_001e3cea != 0) {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" (if "if") (parenthesized_expression "(DAT_001e3cea != 0)" (( "(") (binary_expression "DAT_001e3cea != 0" (identifier "DAT_001e3cea") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" ({ "{") (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" (identifier "FUN_00117220") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (= "=") (binary_expression "DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (+ "+") (number_literal "-1"))) (; ";")) (} "}")))) (if_statement "if (DAT_001e3ce8 != '\0') {\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" (if "if") (parenthesized_expression "(DAT_001e3ce8 != '\0')" (( "(") (binary_expression "DAT_001e3ce8 != '\0'" (identifier "DAT_001e3ce8") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      FUN_00117220();\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n    }" ({ "{") (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" (identifier "FUN_00117220") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (= "=") (binary_expression "DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (+ "+") (number_literal "-1"))) (; ";")) (} "}"))) (if_statement "if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" (if "if") (parenthesized_expression "((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0))" (( "(") (binary_expression "(DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)" (parenthesized_expression "(DAT_001e3ce0 != 0)" (( "(") (binary_expression "DAT_001e3ce0 != 0" (identifier "DAT_001e3ce0") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(DAT_001e3afc == 0)" (( "(") (binary_expression "DAT_001e3afc == 0" (identifier "DAT_001e3afc") (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" ({ "{") (expression_statement "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);" (assignment_expression "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"skipping prefixes on this instruction",5)" (identifier "dcgettext") (argument_list "(0,"skipping prefixes on this instruction",5)" (( "(") (number_literal "0") (, ",") (string_literal ""skipping prefixes on this instruction"" (" """) (string_content "skipping prefixes on this instruction") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011d8a0(uVar11);" (call_expression "FUN_0011d8a0(uVar11)" (identifier "FUN_0011d8a0") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (} "}"))) (expression_statement "puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);" (assignment_expression "puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20)" (identifier "puVar7") (= "=") (cast_expression "(undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00116fb0((uint)DAT_001e3bd4 + iVar20)" (identifier "FUN_00116fb0") (argument_list "((uint)DAT_001e3bd4 + iVar20)" (( "(") (binary_expression "(uint)DAT_001e3bd4 + iVar20" (cast_expression "(uint)DAT_001e3bd4" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "DAT_001e3bd4")) (+ "+") (identifier "iVar20")) () ")"))))) (; ";")) (expression_statement "puVar10 = puVar7;" (assignment_expression "puVar10 = puVar7" (identifier "puVar10") (= "=") (identifier "puVar7")) (; ";")) (if_statement "if (DAT_001e3bd4 != 1) {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }" (if "if") (parenthesized_expression "(DAT_001e3bd4 != 1)" (( "(") (binary_expression "DAT_001e3bd4 != 1" (identifier "DAT_001e3bd4") (!= "!=") (number_literal "1")) () ")")) (compound_statement "{\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 8);\n    }" ({ "{") (if_statement "if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }" (if "if") (parenthesized_expression "(DAT_001e3bd4 != 2)" (( "(") (binary_expression "DAT_001e3bd4 != 2" (identifier "DAT_001e3bd4") (!= "!=") (number_literal "2")) () ")")) (compound_statement "{\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");\n      }" ({ "{") (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump")" (identifier "FUN_0011dd00") (argument_list "("../../gas/config/tc-i386.c",0x1d62,"output_jump")" (( "(") (string_literal ""../../gas/config/tc-i386.c"" (" """) (string_content "../../gas/config/tc-i386.c") (" """)) (, ",") (number_literal "0x1d62") (, ",") (string_literal ""output_jump"" (" """) (string_content "output_jump") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "puVar10 = puVar7 + 1;" (assignment_expression "puVar10 = puVar7 + 1" (identifier "puVar10") (= "=") (binary_expression "puVar7 + 1" (identifier "puVar7") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*puVar7 = (char)(DAT_001e3bcc >> 8);" (assignment_expression "*puVar7 = (char)(DAT_001e3bcc >> 8)" (pointer_expression "*puVar7" (* "*") (identifier "puVar7")) (= "=") (cast_expression "(char)(DAT_001e3bcc >> 8)" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (parenthesized_expression "(DAT_001e3bcc >> 8)" (( "(") (binary_expression "DAT_001e3bcc >> 8" (identifier "DAT_001e3bcc") (>> ">>") (number_literal "8")) () ")")))) (; ";")) (} "}"))) (expression_statement "*puVar10 = (char)DAT_001e3bcc;" (assignment_expression "*puVar10 = (char)DAT_001e3bcc" (pointer_expression "*puVar10" (* "*") (identifier "puVar10")) (= "=") (cast_expression "(char)DAT_001e3bcc" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "DAT_001e3bcc"))) (; ";")) (if_statement "if ((iVar20 == 4) && (iVar4 == 0x47)) {\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }" (if "if") (parenthesized_expression "((iVar20 == 4) && (iVar4 == 0x47))" (( "(") (binary_expression "(iVar20 == 4) && (iVar4 == 0x47)" (parenthesized_expression "(iVar20 == 4)" (( "(") (binary_expression "iVar20 == 4" (identifier "iVar20") (== "==") (number_literal "4")) () ")")) (&& "&&") (parenthesized_expression "(iVar4 == 0x47)" (( "(") (binary_expression "iVar4 == 0x47" (identifier "iVar4") (== "==") (number_literal "0x47")) () ")"))) () ")")) (compound_statement "{\n      iVar4 = FUN_00136e70(*DAT_001e3c60);\n      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);\n      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);\n      return;\n    }" ({ "{") (expression_statement "iVar4 = FUN_00136e70(*DAT_001e3c60);" (assignment_expression "iVar4 = FUN_00136e70(*DAT_001e3c60)" (identifier "iVar4") (= "=") (call_expression "FUN_00136e70(*DAT_001e3c60)" (identifier "FUN_00136e70") (argument_list "(*DAT_001e3c60)" (( "(") (pointer_expression "*DAT_001e3c60" (* "*") (identifier "DAT_001e3c60")) () ")")))) (; ";")) (expression_statement "uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);" (assignment_expression "uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e)" (identifier "uVar5") (= "=") (call_expression "FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e)" (identifier "FUN_00134ea0") (argument_list "(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e)" (( "(") (number_literal "4") (, ",") (number_literal "1") (, ",") (number_literal "1") (, ",") (binary_expression "(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e" (parenthesized_expression "(-(uint)(iVar4 == 0) & 0xfffffec9)" (( "(") (binary_expression "-(uint)(iVar4 == 0) & 0xfffffec9" (unary_expression "-(uint)(iVar4 == 0)" (- "-") (call_expression "(uint)(iVar4 == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")))) (& "&") (number_literal "0xfffffec9")) () ")")) (+ "+") (number_literal "0x17e")) () ")")))) (; ";")) (expression_statement "FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);" (call_expression "FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5)" (identifier "FUN_0012ee00") (argument_list "(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5)" (( "(") (identifier "DAT_001e4648") (, ",") (binary_expression "puVar10 + (1 - (DAT_001e4648 + 0x80))" (identifier "puVar10") (+ "+") (parenthesized_expression "(1 - (DAT_001e4648 + 0x80))" (( "(") (binary_expression "1 - (DAT_001e4648 + 0x80)" (number_literal "1") (- "-") (parenthesized_expression "(DAT_001e4648 + 0x80)" (( "(") (binary_expression "DAT_001e4648 + 0x80" (identifier "DAT_001e4648") (+ "+") (number_literal "0x80")) () ")"))) () ")"))) (, ",") (number_literal "4") (, ",") (identifier "DAT_001e3c60") (, ",") (number_literal "1") (, ",") (identifier "uVar5") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);" (assignment_expression "uVar5 = FUN_00134ea0(iVar20,1,1,iVar4)" (identifier "uVar5") (= "=") (call_expression "FUN_00134ea0(iVar20,1,1,iVar4)" (identifier "FUN_00134ea0") (argument_list "(iVar20,1,1,iVar4)" (( "(") (identifier "iVar20") (, ",") (number_literal "1") (, ",") (number_literal "1") (, ",") (identifier "iVar4") () ")")))) (; ";")) (expression_statement "pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5);" (assignment_expression "pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5)" (identifier "pbVar8") (= "=") (cast_expression "(byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5)" (identifier "FUN_0012ee00") (argument_list "(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,\n                                  DAT_001e3c60,1,uVar5)" (( "(") (identifier "DAT_001e4648") (, ",") (binary_expression "puVar10 + (1 - (DAT_001e4648 + 0x80))" (identifier "puVar10") (+ "+") (parenthesized_expression "(1 - (DAT_001e4648 + 0x80))" (( "(") (binary_expression "1 - (DAT_001e4648 + 0x80)" (number_literal "1") (- "-") (parenthesized_expression "(DAT_001e4648 + 0x80)" (( "(") (binary_expression "DAT_001e4648 + 0x80" (identifier "DAT_001e4648") (+ "+") (number_literal "0x80")) () ")"))) () ")"))) (, ",") (identifier "iVar20") (, ",") (identifier "DAT_001e3c60") (, ",") (number_literal "1") (, ",") (identifier "uVar5") () ")"))))) (; ";")) (if_statement "if (iVar20 != 1) {\n      return;\n    }" (if "if") (parenthesized_expression "(iVar20 != 1)" (( "(") (binary_expression "iVar20 != 1" (identifier "iVar20") (!= "!=") (number_literal "1")) () ")")) (compound_statement "{\n      return;\n    }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "*pbVar8 = *pbVar8 | 0x80;" (assignment_expression "*pbVar8 = *pbVar8 | 0x80" (pointer_expression "*pbVar8" (* "*") (identifier "pbVar8")) (= "=") (binary_expression "*pbVar8 | 0x80" (pointer_expression "*pbVar8" (* "*") (identifier "pbVar8")) (| "|") (number_literal "0x80"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (if_statement "if ((DAT_001e3be9 & 1) != 0) {\n    if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }\n    uVar21 = (uint)(DAT_001e3ce7 != '\0');\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }\n    iVar4 = (-(uint)!bVar29 & 2) + 2;\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    pbVar13 = pbVar8 + 1;\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }\n    *pbVar8 = (byte)DAT_001e3bcc;\n    if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }\n    uVar11 = DAT_001e3bc0;\n    if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }\n    uVar11 = DAT_001e3c60[2];\n    uVar12 = 2;\n    pbVar13 = pbVar13 + iVar4;\nLAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);\n    return;\n  }" (if "if") (parenthesized_expression "((DAT_001e3be9 & 1) != 0)" (( "(") (binary_expression "(DAT_001e3be9 & 1) != 0" (parenthesized_expression "(DAT_001e3be9 & 1)" (( "(") (binary_expression "DAT_001e3be9 & 1" (identifier "DAT_001e3be9") (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }\n    uVar21 = (uint)(DAT_001e3ce7 != '\0');\n    if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }\n    iVar4 = (-(uint)!bVar29 & 2) + 2;\n    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }\n    pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);\n    if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }\n    pbVar13 = pbVar8 + 1;\n    if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }\n    *pbVar8 = (byte)DAT_001e3bcc;\n    if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }\n    uVar11 = DAT_001e3bc0;\n    if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }\n    uVar11 = DAT_001e3c60[2];\n    uVar12 = 2;\n    pbVar13 = pbVar13 + iVar4;\nLAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);\n    return;\n  }" ({ "{") (if_statement "if (DAT_001e3ce7 != '\0') {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }\n    else {\n      bVar29 = DAT_001e3b14 == 1;\n    }" (if "if") (parenthesized_expression "(DAT_001e3ce7 != '\0')" (( "(") (binary_expression "DAT_001e3ce7 != '\0'" (identifier "DAT_001e3ce7") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      bVar29 = DAT_001e3b14 != 1;\n    }" ({ "{") (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (= "=") (binary_expression "DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "bVar29 = DAT_001e3b14 != 1;" (assignment_expression "bVar29 = DAT_001e3b14 != 1" (identifier "bVar29") (= "=") (binary_expression "DAT_001e3b14 != 1" (identifier "DAT_001e3b14") (!= "!=") (number_literal "1"))) (; ";")) (} "}")) (else_clause "else {\n      bVar29 = DAT_001e3b14 == 1;\n    }" (else "else") (compound_statement "{\n      bVar29 = DAT_001e3b14 == 1;\n    }" ({ "{") (expression_statement "bVar29 = DAT_001e3b14 == 1;" (assignment_expression "bVar29 = DAT_001e3b14 == 1" (identifier "bVar29") (= "=") (binary_expression "DAT_001e3b14 == 1" (identifier "DAT_001e3b14") (== "==") (number_literal "1"))) (; ";")) (} "}")))) (expression_statement "uVar21 = (uint)(DAT_001e3ce7 != '\0');" (assignment_expression "uVar21 = (uint)(DAT_001e3ce7 != '\0')" (identifier "uVar21") (= "=") (call_expression "(uint)(DAT_001e3ce7 != '\0')" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(DAT_001e3ce7 != '\0')" (( "(") (binary_expression "DAT_001e3ce7 != '\0'" (identifier "DAT_001e3ce7") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")))) (; ";")) (if_statement "if (DAT_001e3cea != 0) {\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }" (if "if") (parenthesized_expression "(DAT_001e3cea != 0)" (( "(") (binary_expression "DAT_001e3cea != 0" (identifier "DAT_001e3cea") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      DAT_001e3ce0 = DAT_001e3ce0 + -1;\n      uVar21 = uVar21 + 1;\n    }" ({ "{") (expression_statement "DAT_001e3ce0 = DAT_001e3ce0 + -1;" (assignment_expression "DAT_001e3ce0 = DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (= "=") (binary_expression "DAT_001e3ce0 + -1" (identifier "DAT_001e3ce0") (+ "+") (number_literal "-1"))) (; ";")) (expression_statement "uVar21 = uVar21 + 1;" (assignment_expression "uVar21 = uVar21 + 1" (identifier "uVar21") (= "=") (binary_expression "uVar21 + 1" (identifier "uVar21") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "iVar4 = (-(uint)!bVar29 & 2) + 2;" (assignment_expression "iVar4 = (-(uint)!bVar29 & 2) + 2" (identifier "iVar4") (= "=") (binary_expression "(-(uint)!bVar29 & 2) + 2" (parenthesized_expression "(-(uint)!bVar29 & 2)" (( "(") (binary_expression "-(uint)!bVar29 & 2" (unary_expression "-(uint)!bVar29" (- "-") (cast_expression "(uint)!bVar29" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (unary_expression "!bVar29" (! "!") (identifier "bVar29")))) (& "&") (number_literal "2")) () ")")) (+ "+") (number_literal "2"))) (; ";")) (if_statement "if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" (if "if") (parenthesized_expression "((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0))" (( "(") (binary_expression "(DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)" (parenthesized_expression "(DAT_001e3ce0 != 0)" (( "(") (binary_expression "DAT_001e3ce0 != 0" (identifier "DAT_001e3ce0") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(DAT_001e3afc == 0)" (( "(") (binary_expression "DAT_001e3afc == 0" (identifier "DAT_001e3afc") (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);\n      FUN_0011d8a0(uVar11);\n    }" ({ "{") (expression_statement "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);" (assignment_expression "uVar11 = dcgettext(0,"skipping prefixes on this instruction",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"skipping prefixes on this instruction",5)" (identifier "dcgettext") (argument_list "(0,"skipping prefixes on this instruction",5)" (( "(") (number_literal "0") (, ",") (string_literal ""skipping prefixes on this instruction"" (" """) (string_content "skipping prefixes on this instruction") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011d8a0(uVar11);" (call_expression "FUN_0011d8a0(uVar11)" (identifier "FUN_0011d8a0") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (} "}"))) (expression_statement "pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);" (assignment_expression "pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4)" (identifier "pbVar8") (= "=") (cast_expression "(byte *)FUN_00116fb0(uVar21 + 3 + iVar4)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00116fb0(uVar21 + 3 + iVar4)" (identifier "FUN_00116fb0") (argument_list "(uVar21 + 3 + iVar4)" (( "(") (binary_expression "uVar21 + 3 + iVar4" (binary_expression "uVar21 + 3" (identifier "uVar21") (+ "+") (number_literal "3")) (+ "+") (identifier "iVar4")) () ")"))))) (; ";")) (if_statement "if (DAT_001e3ce7 != '\0') {\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }" (if "if") (parenthesized_expression "(DAT_001e3ce7 != '\0')" (( "(") (binary_expression "DAT_001e3ce7 != '\0'" (identifier "DAT_001e3ce7") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      *pbVar8 = 0x66;\n      pbVar8 = pbVar8 + 1;\n    }" ({ "{") (expression_statement "*pbVar8 = 0x66;" (assignment_expression "*pbVar8 = 0x66" (pointer_expression "*pbVar8" (* "*") (identifier "pbVar8")) (= "=") (number_literal "0x66")) (; ";")) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" (identifier "pbVar8") (= "=") (binary_expression "pbVar8 + 1" (identifier "pbVar8") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "pbVar13 = pbVar8 + 1;" (assignment_expression "pbVar13 = pbVar8 + 1" (identifier "pbVar13") (= "=") (binary_expression "pbVar8 + 1" (identifier "pbVar8") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (DAT_001e3cea != 0) {\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }" (if "if") (parenthesized_expression "(DAT_001e3cea != 0)" (( "(") (binary_expression "DAT_001e3cea != 0" (identifier "DAT_001e3cea") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      *pbVar8 = DAT_001e3cea;\n      pbVar13 = pbVar8 + 2;\n      pbVar8 = pbVar8 + 1;\n    }" ({ "{") (expression_statement "*pbVar8 = DAT_001e3cea;" (assignment_expression "*pbVar8 = DAT_001e3cea" (pointer_expression "*pbVar8" (* "*") (identifier "pbVar8")) (= "=") (identifier "DAT_001e3cea")) (; ";")) (expression_statement "pbVar13 = pbVar8 + 2;" (assignment_expression "pbVar13 = pbVar8 + 2" (identifier "pbVar13") (= "=") (binary_expression "pbVar8 + 2" (identifier "pbVar8") (+ "+") (number_literal "2"))) (; ";")) (expression_statement "pbVar8 = pbVar8 + 1;" (assignment_expression "pbVar8 = pbVar8 + 1" (identifier "pbVar8") (= "=") (binary_expression "pbVar8 + 1" (identifier "pbVar8") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "*pbVar8 = (byte)DAT_001e3bcc;" (assignment_expression "*pbVar8 = (byte)DAT_001e3bcc" (pointer_expression "*pbVar8" (* "*") (identifier "pbVar8")) (= "=") (cast_expression "(byte)DAT_001e3bcc" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "DAT_001e3bcc"))) (; ";")) (if_statement "if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }\n    else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }" (if "if") (parenthesized_expression "(*(char *)(DAT_001e3c68 + 0x18) == '\x02')" (( "(") (binary_expression "*(char *)(DAT_001e3c68 + 0x18) == '\x02'" (pointer_expression "*(char *)(DAT_001e3c68 + 0x18)" (* "*") (cast_expression "(char *)(DAT_001e3c68 + 0x18)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_001e3c68 + 0x18)" (( "(") (binary_expression "DAT_001e3c68 + 0x18" (identifier "DAT_001e3c68") (+ "+") (number_literal "0x18")) () ")")))) (== "==") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'"))) () ")")) (compound_statement "{\n      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);\n      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }\n      FUN_00131030(pbVar13,uVar28,iVar4);\n    }" ({ "{") (expression_statement "uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);" (assignment_expression "uVar28 = *(ulong *)(DAT_001e3c68 + 0x10)" (identifier "uVar28") (= "=") (pointer_expression "*(ulong *)(DAT_001e3c68 + 0x10)" (* "*") (cast_expression "(ulong *)(DAT_001e3c68 + 0x10)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_001e3c68 + 0x10)" (( "(") (binary_expression "DAT_001e3c68 + 0x10" (identifier "DAT_001e3c68") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (if_statement "if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }" (if "if") (parenthesized_expression "(((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000))" (( "(") (binary_expression "((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)" (parenthesized_expression "((iVar4 == 2) && (0xffff < uVar28))" (( "(") (binary_expression "(iVar4 == 2) && (0xffff < uVar28)" (parenthesized_expression "(iVar4 == 2)" (( "(") (binary_expression "iVar4 == 2" (identifier "iVar4") (== "==") (number_literal "2")) () ")")) (&& "&&") (parenthesized_expression "(0xffff < uVar28)" (( "(") (binary_expression "0xffff < uVar28" (number_literal "0xffff") (< "<") (identifier "uVar28")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(0xffff < uVar28 + 0x8000)" (( "(") (binary_expression "0xffff < uVar28 + 0x8000" (number_literal "0xffff") (< "<") (binary_expression "uVar28 + 0x8000" (identifier "uVar28") (+ "+") (number_literal "0x8000"))) () ")"))) () ")")) (compound_statement "{\n        uVar11 = dcgettext(0,"16-bit jump out of range",5);\n        FUN_0011da70(uVar11);\n        return;\n      }" ({ "{") (expression_statement "uVar11 = dcgettext(0,"16-bit jump out of range",5);" (assignment_expression "uVar11 = dcgettext(0,"16-bit jump out of range",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"16-bit jump out of range",5)" (identifier "dcgettext") (argument_list "(0,"16-bit jump out of range",5)" (( "(") (number_literal "0") (, ",") (string_literal ""16-bit jump out of range"" (" """) (string_content "16-bit jump out of range") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011da70(uVar11);" (call_expression "FUN_0011da70(uVar11)" (identifier "FUN_0011da70") (argument_list "(uVar11)" (( "(") (identifier "uVar11") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "FUN_00131030(pbVar13,uVar28,iVar4);" (call_expression "FUN_00131030(pbVar13,uVar28,iVar4)" (identifier "FUN_00131030") (argument_list "(pbVar13,uVar28,iVar4)" (( "(") (identifier "pbVar13") (, ",") (identifier "uVar28") (, ",") (identifier "iVar4") () ")"))) (; ";")) (} "}")) (else_clause "else {\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }" (else "else") (compound_statement "{\n      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);\n      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);\n    }" ({ "{") (expression_statement "uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);" (assignment_expression "uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0)" (identifier "uVar5") (= "=") (call_expression "FUN_00134ea0(iVar4,0,0,DAT_001e3ca0)" (identifier "FUN_00134ea0") (argument_list "(iVar4,0,0,DAT_001e3ca0)" (( "(") (identifier "iVar4") (, ",") (number_literal "0") (, ",") (number_literal "0") (, ",") (identifier "DAT_001e3ca0") () ")")))) (; ";")) (expression_statement "FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);" (call_expression "FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5)" (identifier "FUN_0012ee00") (argument_list "(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5)" (( "(") (identifier "DAT_001e4648") (, ",") (binary_expression "(long)pbVar13 - (DAT_001e4648 + 0x80)" (cast_expression "(long)pbVar13" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "pbVar13")) (- "-") (parenthesized_expression "(DAT_001e4648 + 0x80)" (( "(") (binary_expression "DAT_001e4648 + 0x80" (identifier "DAT_001e4648") (+ "+") (number_literal "0x80")) () ")"))) (, ",") (identifier "iVar4") (, ",") (identifier "DAT_001e3c68") (, ",") (number_literal "0") (, ",") (identifier "uVar5") () ")"))) (; ";")) (} "}")))) (expression_statement "uVar11 = DAT_001e3bc0;" (assignment_expression "uVar11 = DAT_001e3bc0" (identifier "uVar11") (= "=") (identifier "DAT_001e3bc0")) (; ";")) (if_statement "if (*(char *)(DAT_001e3c60 + 3) != '\x02') {\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }" (if "if") (parenthesized_expression "(*(char *)(DAT_001e3c60 + 3) != '\x02')" (( "(") (binary_expression "*(char *)(DAT_001e3c60 + 3) != '\x02'" (pointer_expression "*(char *)(DAT_001e3c60 + 3)" (* "*") (cast_expression "(char *)(DAT_001e3c60 + 3)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_001e3c60 + 3)" (( "(") (binary_expression "DAT_001e3c60 + 3" (identifier "DAT_001e3c60") (+ "+") (number_literal "3")) () ")")))) (!= "!=") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'"))) () ")")) (compound_statement "{\n      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);\n      FUN_0011da70(uVar12,uVar11);\n    }" ({ "{") (expression_statement "uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);" (assignment_expression "uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"can\'t handle non absolute segment in `%s\'",5)" (identifier "dcgettext") (argument_list "(0,"can\'t handle non absolute segment in `%s\'",5)" (( "(") (number_literal "0") (, ",") (string_literal ""can\'t handle non absolute segment in `%s\'"" (" """) (string_content "can") (escape_sequence "\'") (string_content "t handle non absolute segment in `%s") (escape_sequence "\'") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011da70(uVar12,uVar11);" (call_expression "FUN_0011da70(uVar12,uVar11)" (identifier "FUN_0011da70") (argument_list "(uVar12,uVar11)" (( "(") (identifier "uVar12") (, ",") (identifier "uVar11") () ")"))) (; ";")) (} "}"))) (expression_statement "uVar11 = DAT_001e3c60[2];" (assignment_expression "uVar11 = DAT_001e3c60[2]" (identifier "uVar11") (= "=") (subscript_expression "DAT_001e3c60[2]" (identifier "DAT_001e3c60") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "uVar12 = 2;" (assignment_expression "uVar12 = 2" (identifier "uVar12") (= "=") (number_literal "2")) (; ";")) (expression_statement "pbVar13 = pbVar13 + iVar4;" (assignment_expression "pbVar13 = pbVar13 + iVar4" (identifier "pbVar13") (= "=") (binary_expression "pbVar13 + iVar4" (identifier "pbVar13") (+ "+") (identifier "iVar4"))) (; ";")) (labeled_statement "LAB_0013817e:\n    FUN_00131030(pbVar13,uVar11,uVar12);" (statement_identifier "LAB_0013817e") (: ":") (expression_statement "FUN_00131030(pbVar13,uVar11,uVar12);" (call_expression "FUN_00131030(pbVar13,uVar11,uVar12)" (identifier "FUN_00131030") (argument_list "(pbVar13,uVar11,uVar12)" (( "(") (identifier "pbVar13") (, ",") (identifier "uVar11") (, ",") (identifier "uVar12") () ")"))) (; ";"))) (return_statement "return;" (return "return") (; ";")) (} "}"))) (if_statement "if ((DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae)) {\n    if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }\n  }\n  else {\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }" (if "if") (parenthesized_expression "((DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae))" (( "(") (binary_expression "(DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae)" (parenthesized_expression "(DAT_001e3adc == 0)" (( "(") (binary_expression "DAT_001e3adc == 0" (identifier "DAT_001e3adc") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(DAT_001e3bcc != 0xfae)" (( "(") (binary_expression "DAT_001e3bcc != 0xfae" (identifier "DAT_001e3bcc") (!= "!=") (number_literal "0xfae")) () ")"))) () ")")) (compound_statement "{\n    if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }\n  }" ({ "{") (if_statement "if (DAT_001e3ae0 != 0) {\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }" (if "if") (parenthesized_expression "(DAT_001e3ae0 != 0)" (( "(") (binary_expression "DAT_001e3ae0 != 0" (identifier "DAT_001e3ae0") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      if (DAT_001e3bcc == 0xf0) {\n        return;\n      }\nLAB_00137bee:\n      DAT_001e3ce9 = 0;\n    }" ({ "{") (if_statement "if (DAT_001e3bcc == 0xf0) {\n        return;\n      }" (if "if") (parenthesized_expression "(DAT_001e3bcc == 0xf0)" (( "(") (binary_expression "DAT_001e3bcc == 0xf0" (identifier "DAT_001e3bcc") (== "==") (number_literal "0xf0")) () ")")) (compound_statement "{\n        return;\n      }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (labeled_statement "LAB_00137bee:\n      DAT_001e3ce9 = 0;" (statement_identifier "LAB_00137bee") (: ":") (expression_statement "DAT_001e3ce9 = 0;" (assignment_expression "DAT_001e3ce9 = 0" (identifier "DAT_001e3ce9") (= "=") (number_literal "0")) (; ";"))) (} "}"))) (} "}")) (else_clause "else {\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }" (else "else") (compound_statement "{\n    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }\n    if (DAT_001e3ae0 != 0) goto LAB_00137bee;\n  }" ({ "{") (if_statement "if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }" (if "if") (parenthesized_expression "(((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0))))" (( "(") (binary_expression "((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&\n       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))" (parenthesized_expression "((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1))" (( "(") (binary_expression "(DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)" (parenthesized_expression "(DAT_001e3c24 == 1)" (( "(") (binary_expression "DAT_001e3c24 == 1" (identifier "DAT_001e3c24") (== "==") (number_literal "1")) () ")")) (&& "&&") (parenthesized_expression "(DAT_001e3c34 == 1)" (( "(") (binary_expression "DAT_001e3c34 == 1" (identifier "DAT_001e3c34") (== "==") (number_literal "1")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))" (( "(") (parenthesized_expression "((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0))" (( "(") (binary_expression "(DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)" (binary_expression "(DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8" (parenthesized_expression "(DAT_001e3c60[2] & 0xffffffffffffffef)" (( "(") (binary_expression "DAT_001e3c60[2] & 0xffffffffffffffef" (subscript_expression "DAT_001e3c60[2]" (identifier "DAT_001e3c60") ([ "[") (number_literal "2") (] "]")) (& "&") (number_literal "0xffffffffffffffef")) () ")")) (== "==") (number_literal "0xe8")) (|| "||") (parenthesized_expression "(DAT_001e3c60[2] == 0xf0)" (( "(") (binary_expression "DAT_001e3c60[2] == 0xf0" (subscript_expression "DAT_001e3c60[2]" (identifier "DAT_001e3c60") ([ "[") (number_literal "2") (] "]")) (== "==") (number_literal "0xf0")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n      pbVar13 = (byte *)FUN_00116fb0(5);\n      uVar12 = 5;\n      uVar11 = 0x240483f0;\n      goto LAB_0013817e;\n    }" ({ "{") (expression_statement "pbVar13 = (byte *)FUN_00116fb0(5);" (assignment_expression "pbVar13 = (byte *)FUN_00116fb0(5)" (identifier "pbVar13") (= "=") (cast_expression "(byte *)FUN_00116fb0(5)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00116fb0(5)" (identifier "FUN_00116fb0") (argument_list "(5)" (( "(") (number_literal "5") () ")"))))) (; ";")) (expression_statement "uVar12 = 5;" (assignment_expression "uVar12 = 5" (identifier "uVar12") (= "=") (number_literal "5")) (; ";")) (expression_statement "uVar11 = 0x240483f0;" (assignment_expression "uVar11 = 0x240483f0" (identifier "uVar11") (= "=") (number_literal "0x240483f0")) (; ";")) (goto_statement "goto LAB_0013817e;" (goto "goto") (statement_identifier "LAB_0013817e") (; ";")) (} "}"))) (if_statement "if (DAT_001e3ae0 != 0) goto LAB_00137bee;" (if "if") (parenthesized_expression "(DAT_001e3ae0 != 0)" (( "(") (binary_expression "DAT_001e3ae0 != 0" (identifier "DAT_001e3ae0") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00137bee;" (goto "goto") (statement_identifier "LAB_00137bee") (; ";"))) (} "}")))) (if_statement "if ((_DAT_001e3bec & 0x7000600) != 0) {\n    lVar23 = 0;\n    do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);\n    if (DAT_001e3cfc != 0) {\n                    \n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    lVar23 = FUN_00116fb0(DAT_001e3d14);\n    if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }\n    goto LAB_00137e10;\n  }" (if "if") (parenthesized_expression "((_DAT_001e3bec & 0x7000600) != 0)" (( "(") (binary_expression "(_DAT_001e3bec & 0x7000600) != 0" (parenthesized_expression "(_DAT_001e3bec & 0x7000600)" (( "(") (binary_expression "_DAT_001e3bec & 0x7000600" (identifier "_DAT_001e3bec") (& "&") (number_literal "0x7000600")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    lVar23 = 0;\n    do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);\n    if (DAT_001e3cfc != 0) {\n                    \n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }\n    lVar23 = FUN_00116fb0(DAT_001e3d14);\n    if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }\n    goto LAB_00137e10;\n  }" ({ "{") (expression_statement "lVar23 = 0;" (assignment_expression "lVar23 = 0" (identifier "lVar23") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    } while (lVar23 != 7);" (do "do") (compound_statement "{\n      if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }\n      lVar23 = lVar23 + 1;\n    }" ({ "{") (if_statement "if ((&DAT_001e3ce4)[lVar23] != '\0') {\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }" (if "if") (parenthesized_expression "((&DAT_001e3ce4)[lVar23] != '\0')" (( "(") (binary_expression "(&DAT_001e3ce4)[lVar23] != '\0'" (subscript_expression "(&DAT_001e3ce4)[lVar23]" (parenthesized_expression "(&DAT_001e3ce4)" (( "(") (pointer_expression "&DAT_001e3ce4" (& "&") (identifier "DAT_001e3ce4")) () ")")) ([ "[") (identifier "lVar23") (] "]")) (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n        uVar21 = (uint)lVar23;\n        if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }\n        if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;\n      }" ({ "{") (expression_statement "uVar21 = (uint)lVar23;" (assignment_expression "uVar21 = (uint)lVar23" (identifier "uVar21") (= "=") (cast_expression "(uint)lVar23" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar23"))) (; ";")) (if_statement "if (uVar21 == 0) {\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }" (if "if") (parenthesized_expression "(uVar21 == 0)" (( "(") (binary_expression "uVar21 == 0" (identifier "uVar21") (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");\n        }" ({ "{") (labeled_statement "LAB_00137a7e:\n                    \n          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");" (statement_identifier "LAB_00137a7e") (: ":") (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn")" (identifier "FUN_0011dd00") (argument_list "("../../gas/config/tc-i386.c",0x1e38,"output_insn")" (( "(") (string_literal ""../../gas/config/tc-i386.c"" (" """) (string_content "../../gas/config/tc-i386.c") (" """)) (, ",") (number_literal "0x1e38") (, ",") (string_literal ""output_insn"" (" """) (string_content "output_insn") (" """)) () ")"))) (; ";"))) (} "}"))) (if_statement "if (uVar21 < 3) {\n          FUN_00117220();\n        }\n        else if (uVar21 != 6) goto LAB_00137a7e;" (if "if") (parenthesized_expression "(uVar21 < 3)" (( "(") (binary_expression "uVar21 < 3" (identifier "uVar21") (< "<") (number_literal "3")) () ")")) (compound_statement "{\n          FUN_00117220();\n        }" ({ "{") (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" (identifier "FUN_00117220") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}")) (else_clause "else if (uVar21 != 6) goto LAB_00137a7e;" (else "else") (if_statement "if (uVar21 != 6) goto LAB_00137a7e;" (if "if") (parenthesized_expression "(uVar21 != 6)" (( "(") (binary_expression "uVar21 != 6" (identifier "uVar21") (!= "!=") (number_literal "6")) () ")")) (goto_statement "goto LAB_00137a7e;" (goto "goto") (statement_identifier "LAB_00137a7e") (; ";"))))) (} "}"))) (expression_statement "lVar23 = lVar23 + 1;" (assignment_expression "lVar23 = lVar23 + 1" (identifier "lVar23") (= "=") (binary_expression "lVar23 + 1" (identifier "lVar23") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(lVar23 != 7)" (( "(") (binary_expression "lVar23 != 7" (identifier "lVar23") (!= "!=") (number_literal "7")) () ")")) (; ";")) (if_statement "if (DAT_001e3cfc != 0) {\n                    \n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }" (if "if") (parenthesized_expression "(DAT_001e3cfc != 0)" (( "(") (binary_expression "DAT_001e3cfc != 0" (identifier "DAT_001e3cfc") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                    \n      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");\n    }" ({ "{") (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn")" (identifier "FUN_0011dd00") (argument_list "("../../gas/config/tc-i386.c",0x1e3f,"output_insn")" (( "(") (string_literal ""../../gas/config/tc-i386.c"" (" """) (string_content "../../gas/config/tc-i386.c") (" """)) (, ",") (number_literal "0x1e3f") (, ",") (string_literal ""output_insn"" (" """) (string_content "output_insn") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "lVar23 = FUN_00116fb0(DAT_001e3d14);" (assignment_expression "lVar23 = FUN_00116fb0(DAT_001e3d14)" (identifier "lVar23") (= "=") (call_expression "FUN_00116fb0(DAT_001e3d14)" (identifier "FUN_00116fb0") (argument_list "(DAT_001e3d14)" (( "(") (identifier "DAT_001e3d14") () ")")))) (; ";")) (if_statement "if (DAT_001e3d14 != 0) {\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }" (if "if") (parenthesized_expression "(DAT_001e3d14 != 0)" (( "(") (binary_expression "DAT_001e3d14 != 0" (identifier "DAT_001e3d14") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      lVar16 = 0;\n      do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);\n    }" ({ "{") (expression_statement "lVar16 = 0;" (assignment_expression "lVar16 = 0" (identifier "lVar16") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      } while ((uint)lVar16 < DAT_001e3d14);" (do "do") (compound_statement "{\n        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];\n        lVar16 = lVar16 + 1;\n      }" ({ "{") (expression_statement "*(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];" (assignment_expression "*(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16]" (pointer_expression "*(undefined1 *)(lVar23 + lVar16)" (* "*") (cast_expression "(undefined1 *)(lVar23 + lVar16)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar23 + lVar16)" (( "(") (binary_expression "lVar23 + lVar16" (identifier "lVar23") (+ "+") (identifier "lVar16")) () ")")))) (= "=") (subscript_expression "(&DAT_001e3d10)[lVar16]" (parenthesized_expression "(&DAT_001e3d10)" (( "(") (pointer_expression "&DAT_001e3d10" (& "&") (identifier "DAT_001e3d10")) () ")")) ([ "[") (identifier "lVar16") (] "]"))) (; ";")) (expression_statement "lVar16 = lVar16 + 1;" (assignment_expression "lVar16 = lVar16 + 1" (identifier "lVar16") (= "=") (binary_expression "lVar16 + 1" (identifier "lVar16") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "((uint)lVar16 < DAT_001e3d14)" (( "(") (binary_expression "(uint)lVar16 < DAT_001e3d14" (cast_expression "(uint)lVar16" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "lVar16")) (< "<") (identifier "DAT_001e3d14")) () ")")) (; ";")) (} "}"))) (goto_statement "goto LAB_00137e10;" (goto "goto") (statement_identifier "LAB_00137e10") (; ";")) (} "}"))) (if_statement "if (DAT_001e3bd4 != 1) {\n    if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }\n    if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }\n  }" (if "if") (parenthesized_expression "(DAT_001e3bd4 != 1)" (( "(") (binary_expression "DAT_001e3bd4 != 1" (identifier "DAT_001e3bd4") (!= "!=") (number_literal "1")) () ")")) (compound_statement "{\n    if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }\n    if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }\n  }" ({ "{") (if_statement "if (DAT_001e3bd4 == 0) {\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }" (if "if") (parenthesized_expression "(DAT_001e3bd4 == 0)" (( "(") (binary_expression "DAT_001e3bd4 == 0" (identifier "DAT_001e3bd4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);\n      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);\n      return;\n    }" ({ "{") (expression_statement "uVar11 = dcgettext(0,"pseudo prefix without instruction",5);" (assignment_expression "uVar11 = dcgettext(0,"pseudo prefix without instruction",5)" (identifier "uVar11") (= "=") (call_expression "dcgettext(0,"pseudo prefix without instruction",5)" (identifier "dcgettext") (argument_list "(0,"pseudo prefix without instruction",5)" (( "(") (number_literal "0") (, ",") (string_literal ""pseudo prefix without instruction"" (" """) (string_content "pseudo prefix without instruction") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);" (call_expression "FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11)" (identifier "FUN_0011db40") (argument_list "(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11)" (( "(") (pointer_expression "*(undefined8 *)(lVar1 + 0x40)" (* "*") (cast_expression "(undefined8 *)(lVar1 + 0x40)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar1 + 0x40)" (( "(") (binary_expression "lVar1 + 0x40" (identifier "lVar1") (+ "+") (number_literal "0x40")) () ")")))) (, ",") (pointer_expression "*(undefined4 *)(lVar1 + 0x48)" (* "*") (cast_expression "(undefined4 *)(lVar1 + 0x48)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar1 + 0x48)" (( "(") (binary_expression "lVar1 + 0x48" (identifier "lVar1") (+ "+") (number_literal "0x48")) () ")")))) (, ",") (identifier "uVar11") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (if_statement "if (DAT_001e3bd4 == 2) {\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }\n    else {\n      if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }" (if "if") (parenthesized_expression "(DAT_001e3bd4 == 2)" (( "(") (binary_expression "DAT_001e3bd4 == 2" (identifier "DAT_001e3bd4") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n      if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }\n    }" ({ "{") (if_statement "if ((DAT_001e3bcc & 0xff0000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }" (if "if") (parenthesized_expression "((DAT_001e3bcc & 0xff0000) != 0)" (( "(") (binary_expression "(DAT_001e3bcc & 0xff0000) != 0" (parenthesized_expression "(DAT_001e3bcc & 0xff0000)" (( "(") (binary_expression "DAT_001e3bcc & 0xff0000" (identifier "DAT_001e3bcc") (& "&") (number_literal "0xff0000")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;\n        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;\nLAB_00137dd0:\n        FUN_00131f90();\n      }" ({ "{") (expression_statement "uVar21 = DAT_001e3bcc >> 0x10 & 0xff;" (assignment_expression "uVar21 = DAT_001e3bcc >> 0x10 & 0xff" (identifier "uVar21") (= "=") (binary_expression "DAT_001e3bcc >> 0x10 & 0xff" (binary_expression "DAT_001e3bcc >> 0x10" (identifier "DAT_001e3bcc") (>> ">>") (number_literal "0x10")) (& "&") (number_literal "0xff"))) (; ";")) (if_statement "if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;" (if "if") (parenthesized_expression "((DAT_001e3bda & 0x10) != 0)" (( "(") (binary_expression "(DAT_001e3bda & 0x10) != 0" (parenthesized_expression "(DAT_001e3bda & 0x10)" (( "(") (binary_expression "DAT_001e3bda & 0x10" (identifier "DAT_001e3bda") (& "&") (number_literal "0x10")) () ")")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00137dbf;" (goto "goto") (statement_identifier "LAB_00137dbf") (; ";"))) (labeled_statement "LAB_00137dd0:\n        FUN_00131f90();" (statement_identifier "LAB_00137dd0") (: ":") (expression_statement "FUN_00131f90();" (call_expression "FUN_00131f90()" (identifier "FUN_00131f90") (argument_list "()" (( "(") () ")"))) (; ";"))) (} "}"))) (} "}")) (else_clause "else {\n      if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }" (else "else") (compound_statement "{\n      if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }\n      if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }\n    }" ({ "{") (if_statement "if (DAT_001e3bd4 != 3) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }" (if "if") (parenthesized_expression "(DAT_001e3bd4 != 3)" (( "(") (binary_expression "DAT_001e3bd4 != 3" (identifier "DAT_001e3bd4") (!= "!=") (number_literal "3")) () ")")) (compound_statement "{\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");\n      }" ({ "{") (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn")" (identifier "FUN_0011dd00") (argument_list "("../../gas/config/tc-i386.c",0x1e15,"output_insn")" (( "(") (string_literal ""../../gas/config/tc-i386.c"" (" """) (string_content "../../gas/config/tc-i386.c") (" """)) (, ",") (number_literal "0x1e15") (, ",") (string_literal ""output_insn"" (" """) (string_content "output_insn") (" """)) () ")"))) (; ";")) (} "}"))) (if_statement "if ((DAT_001e3bcc & 0xff000000) != 0) {\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }" (if "if") (parenthesized_expression "((DAT_001e3bcc & 0xff000000) != 0)" (( "(") (binary_expression "(DAT_001e3bcc & 0xff000000) != 0" (parenthesized_expression "(DAT_001e3bcc & 0xff000000)" (( "(") (binary_expression "DAT_001e3bcc & 0xff000000" (identifier "DAT_001e3bcc") (& "&") (number_literal "0xff000000")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        uVar21 = DAT_001e3bcc >> 0x18;\nLAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;\n      }" ({ "{") (expression_statement "uVar21 = DAT_001e3bcc >> 0x18;" (assignment_expression "uVar21 = DAT_001e3bcc >> 0x18" (identifier "uVar21") (= "=") (binary_expression "DAT_001e3bcc >> 0x18" (identifier "DAT_001e3bcc") (>> ">>") (number_literal "0x18"))) (; ";")) (labeled_statement "LAB_00137dbf:\n        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;" (statement_identifier "LAB_00137dbf") (: ":") (if_statement "if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;" (if "if") (parenthesized_expression "((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd))" (( "(") (binary_expression "(uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)" (parenthesized_expression "(uVar21 != 0xf3)" (( "(") (binary_expression "uVar21 != 0xf3" (identifier "uVar21") (!= "!=") (number_literal "0xf3")) () ")")) (|| "||") (parenthesized_expression "(DAT_001e3ce8 != -0xd)" (( "(") (binary_expression "DAT_001e3ce8 != -0xd" (identifier "DAT_001e3ce8") (!= "!=") (number_literal "-0xd")) () ")"))) () ")")) (goto_statement "goto LAB_00137dd0;" (goto "goto") (statement_identifier "LAB_00137dd0") (; ";")))) (} "}"))) (} "}")))) (} "}"))) (if_statement "if ((((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0)) {\n    FUN_00131f90(0x40);\n  }" (if "if") (parenthesized_expression "((((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0))" (( "(") (binary_expression "(((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&\n     (DAT_001e3cea == 0)" (parenthesized_expression "(((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b))" (( "(") (binary_expression "((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)" (parenthesized_expression "((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2))" (( "(") (binary_expression "(DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)" (parenthesized_expression "(DAT_001e3b04 == 2)" (( "(") (binary_expression "DAT_001e3b04 == 2" (identifier "DAT_001e3b04") (== "==") (number_literal "2")) () ")")) (&& "&&") (parenthesized_expression "(DAT_001e3c24 == 2)" (( "(") (binary_expression "DAT_001e3c24 == 2" (identifier "DAT_001e3c24") (== "==") (number_literal "2")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(DAT_001e3c9c == 0x18b)" (( "(") (binary_expression "DAT_001e3c9c == 0x18b" (identifier "DAT_001e3c9c") (== "==") (number_literal "0x18b")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(DAT_001e3cea == 0)" (( "(") (binary_expression "DAT_001e3cea == 0" (identifier "DAT_001e3cea") (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n    FUN_00131f90(0x40);\n  }" ({ "{") (expression_statement "FUN_00131f90(0x40);" (call_expression "FUN_00131f90(0x40)" (identifier "FUN_00131f90") (argument_list "(0x40)" (( "(") (number_literal "0x40") () ")"))) (; ";")) (} "}"))) (expression_statement "pcVar24 = &DAT_001e3ce4;" (assignment_expression "pcVar24 = &DAT_001e3ce4" (identifier "pcVar24") (= "=") (pointer_expression "&DAT_001e3ce4" (& "&") (identifier "DAT_001e3ce4"))) (; ";")) (do_statement "do {\n    while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }\n    FUN_00117220();\n    pcVar24 = pcVar24 + 1;\n  } while (pcVar24 != &DAT_001e3ceb);" (do "do") (compound_statement "{\n    while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }\n    FUN_00117220();\n    pcVar24 = pcVar24 + 1;\n  }" ({ "{") (while_statement "while (*pcVar24 == '\0') {\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }" (while "while") (parenthesized_expression "(*pcVar24 == '\0')" (( "(") (binary_expression "*pcVar24 == '\0'" (pointer_expression "*pcVar24" (* "*") (identifier "pcVar24")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      pcVar24 = pcVar24 + 1;\n      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;\n    }" ({ "{") (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" (identifier "pcVar24") (= "=") (binary_expression "pcVar24 + 1" (identifier "pcVar24") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;" (if "if") (parenthesized_expression "(pcVar24 == &DAT_001e3ceb)" (( "(") (binary_expression "pcVar24 == &DAT_001e3ceb" (identifier "pcVar24") (== "==") (pointer_expression "&DAT_001e3ceb" (& "&") (identifier "DAT_001e3ceb"))) () ")")) (goto_statement "goto LAB_00137e10;" (goto "goto") (statement_identifier "LAB_00137e10") (; ";"))) (} "}"))) (expression_statement "FUN_00117220();" (call_expression "FUN_00117220()" (identifier "FUN_00117220") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "pcVar24 = pcVar24 + 1;" (assignment_expression "pcVar24 = pcVar24 + 1" (identifier "pcVar24") (= "=") (binary_expression "pcVar24 + 1" (identifier "pcVar24") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(pcVar24 != &DAT_001e3ceb)" (( "(") (binary_expression "pcVar24 != &DAT_001e3ceb" (identifier "pcVar24") (!= "!=") (pointer_expression "&DAT_001e3ceb" (& "&") (identifier "DAT_001e3ceb"))) () ")")) (; ";")) (labeled_statement "LAB_00137e10:\n  if (DAT_001e3bd4 == 1) {\n    FUN_00117220(DAT_001e3bcc);\n  }\n  else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }" (statement_identifier "LAB_00137e10") (: ":") (if_statement "if (DAT_001e3bd4 == 1) {\n    FUN_00117220(DAT_001e3bcc);\n  }\n  else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }" (if "if") (parenthesized_expression "(DAT_001e3bd4 == 1)" (( "(") (binary_expression "DAT_001e3bd4 == 1" (identifier "DAT_001e3bd4") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n    FUN_00117220(DAT_001e3bcc);\n  }" ({ "{") (expression_statement "FUN_00117220(DAT_001e3bcc);" (call_expression "FUN_00117220(DAT_001e3bcc)" (identifier "FUN_00117220") (argument_list "(DAT_001e3bcc)" (( "(") (identifier "DAT_001e3bcc") () ")"))) (; ";")) (} "}")) (else_clause "else {\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }" (else "else") (compound_statement "{\n    if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }\n    *puVar10 = (char)(DAT_001e3bcc >> 8);\n    puVar10[1] = (char)DAT_001e3bcc;\n  }" ({ "{") (if_statement "if (DAT_001e3bd4 == 3) {\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }" (if "if") (parenthesized_expression "(DAT_001e3bd4 == 3)" (( "(") (binary_expression "DAT_001e3bd4 == 3" (identifier "DAT_001e3bd4") (== "==") (number_literal "3")) () ")")) (compound_statement "{\n      puVar7 = (undefined1 *)FUN_00116fb0(3);\n      puVar10 = puVar7 + 1;\n      *puVar7 = (char)(DAT_001e3bcc >> 0x10);\n    }" ({ "{") (expression_statement "puVar7 = (undefined1 *)FUN_00116fb0(3);" (assignment_expression "puVar7 = (undefined1 *)FUN_00116fb0(3)" (identifier "puVar7") (= "=") (cast_expression "(undefined1 *)FUN_00116fb0(3)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00116fb0(3)" (identifier "FUN_00116fb0") (argument_list "(3)" (( "(") (number_literal "3") () ")"))))) (; ";")) (expression_statement "puVar10 = puVar7 + 1;" (assignment_expression "puVar10 = puVar7 + 1" (identifier "puVar10") (= "=") (binary_expression "puVar7 + 1" (identifier "puVar7") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*puVar7 = (char)(DAT_001e3bcc >> 0x10);" (assignment_expression "*puVar7 = (char)(DAT_001e3bcc >> 0x10)" (pointer_expression "*puVar7" (* "*") (identifier "puVar7")) (= "=") (cast_expression "(char)(DAT_001e3bcc >> 0x10)" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (parenthesized_expression "(DAT_001e3bcc >> 0x10)" (( "(") (binary_expression "DAT_001e3bcc >> 0x10" (identifier "DAT_001e3bcc") (>> ">>") (number_literal "0x10")) () ")")))) (; ";")) (} "}")) (else_clause "else if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }" (else "else") (if_statement "if (DAT_001e3bd4 == 4) {\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }\n    else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }" (if "if") (parenthesized_expression "(DAT_001e3bd4 == 4)" (( "(") (binary_expression "DAT_001e3bd4 == 4" (identifier "DAT_001e3bd4") (== "==") (number_literal "4")) () ")")) (compound_statement "{\n      puVar7 = (undefined1 *)FUN_00116fb0(4);\n      *puVar7 = (char)(DAT_001e3bcc >> 0x18);\n      puVar10 = puVar7 + 2;\n      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);\n    }" ({ "{") (expression_statement "puVar7 = (undefined1 *)FUN_00116fb0(4);" (assignment_expression "puVar7 = (undefined1 *)FUN_00116fb0(4)" (identifier "puVar7") (= "=") (cast_expression "(undefined1 *)FUN_00116fb0(4)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00116fb0(4)" (identifier "FUN_00116fb0") (argument_list "(4)" (( "(") (number_literal "4") () ")"))))) (; ";")) (expression_statement "*puVar7 = (char)(DAT_001e3bcc >> 0x18);" (assignment_expression "*puVar7 = (char)(DAT_001e3bcc >> 0x18)" (pointer_expression "*puVar7" (* "*") (identifier "puVar7")) (= "=") (cast_expression "(char)(DAT_001e3bcc >> 0x18)" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (parenthesized_expression "(DAT_001e3bcc >> 0x18)" (( "(") (binary_expression "DAT_001e3bcc >> 0x18" (identifier "DAT_001e3bcc") (>> ">>") (number_literal "0x18")) () ")")))) (; ";")) (expression_statement "puVar10 = puVar7 + 2;" (assignment_expression "puVar10 = puVar7 + 2" (identifier "puVar10") (= "=") (binary_expression "puVar7 + 2" (identifier "puVar7") (+ "+") (number_literal "2"))) (; ";")) (expression_statement "puVar7[1] = (char)(DAT_001e3bcc >> 0x10);" (assignment_expression "puVar7[1] = (char)(DAT_001e3bcc >> 0x10)" (subscript_expression "puVar7[1]" (identifier "puVar7") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(char)(DAT_001e3bcc >> 0x10)" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (parenthesized_expression "(DAT_001e3bcc >> 0x10)" (( "(") (binary_expression "DAT_001e3bcc >> 0x10" (identifier "DAT_001e3bcc") (>> ">>") (number_literal "0x10")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }" (else "else") (compound_statement "{\n      if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }\n      puVar10 = (undefined1 *)FUN_00116fb0(2);\n    }" ({ "{") (if_statement "if (DAT_001e3bd4 != 2) {\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }" (if "if") (parenthesized_expression "(DAT_001e3bd4 != 2)" (( "(") (binary_expression "DAT_001e3bd4 != 2" (identifier "DAT_001e3bd4") (!= "!=") (number_literal "2")) () ")")) (compound_statement "{\n                    \n        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");\n      }" ({ "{") (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn")" (identifier "FUN_0011dd00") (argument_list "("../../gas/config/tc-i386.c",0x1e5c,"output_insn")" (( "(") (string_literal ""../../gas/config/tc-i386.c"" (" """) (string_content "../../gas/config/tc-i386.c") (" """)) (, ",") (number_literal "0x1e5c") (, ",") (string_literal ""output_insn"" (" """) (string_content "output_insn") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "puVar10 = (undefined1 *)FUN_00116fb0(2);" (assignment_expression "puVar10 = (undefined1 *)FUN_00116fb0(2)" (identifier "puVar10") (= "=") (cast_expression "(undefined1 *)FUN_00116fb0(2)" (( "(") (type_descriptor "undefined1 *" (type_identifier "undefined1") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00116fb0(2)" (identifier "FUN_00116fb0") (argument_list "(2)" (( "(") (number_literal "2") () ")"))))) (; ";")) (} "}")))))) (expression_statement "*puVar10 = (char)(DAT_001e3bcc >> 8);" (assignment_expression "*puVar10 = (char)(DAT_001e3bcc >> 8)" (pointer_expression "*puVar10" (* "*") (identifier "puVar10")) (= "=") (cast_expression "(char)(DAT_001e3bcc >> 8)" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (parenthesized_expression "(DAT_001e3bcc >> 8)" (( "(") (binary_expression "DAT_001e3bcc >> 8" (identifier "DAT_001e3bcc") (>> ">>") (number_literal "8")) () ")")))) (; ";")) (expression_statement "puVar10[1] = (char)DAT_001e3bcc;" (assignment_expression "puVar10[1] = (char)DAT_001e3bcc" (subscript_expression "puVar10[1]" (identifier "puVar10") ([ "[") (number_literal "1") (] "]")) (= "=") (cast_expression "(char)DAT_001e3bcc" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "DAT_001e3bcc"))) (; ";")) (} "}"))))) (if_statement "if ((((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))\n     ) {\n    FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);\n  }" (if "if") (parenthesized_expression "((((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))\n     )" (( "(") (binary_expression "(((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&\n     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))" (parenthesized_expression "(((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4))" (( "(") (binary_expression "((DAT_001e3be8 & 8) != 0) &&\n      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)" (parenthesized_expression "((DAT_001e3be8 & 8) != 0)" (( "(") (binary_expression "(DAT_001e3be8 & 8) != 0" (parenthesized_expression "(DAT_001e3be8 & 8)" (( "(") (binary_expression "DAT_001e3be8 & 8" (identifier "DAT_001e3be8") (& "&") (number_literal "8")) () ")")) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)" (( "(") (comma_expression "FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4" (call_expression "FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec)" (identifier "FUN_00117220") (argument_list "(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec)" (( "(") (binary_expression "DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec" (binary_expression "DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6" (binary_expression "DAT_001e3cf0 * 8" (identifier "DAT_001e3cf0") (* "*") (number_literal "8")) (| "|") (binary_expression "DAT_001e3cf4 << 6" (identifier "DAT_001e3cf4") (<< "<<") (number_literal "6"))) (| "|") (identifier "DAT_001e3cec")) () ")"))) (, ",") (binary_expression "DAT_001e3cec == 4" (identifier "DAT_001e3cec") (== "==") (number_literal "4"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))" (( "(") (parenthesized_expression "(DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0))))" (( "(") (binary_expression "DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))" (binary_expression "DAT_001e3cf4 != 3" (identifier "DAT_001e3cf4") (!= "!=") (number_literal "3")) (&& "&&") (parenthesized_expression "((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))" (( "(") (parenthesized_expression "(DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0))" (( "(") (binary_expression "DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)" (binary_expression "DAT_001e3cb0 == 0" (identifier "DAT_001e3cb0") (== "==") (number_literal "0")) (|| "||") (parenthesized_expression "((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)" (( "(") (binary_expression "(*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0" (parenthesized_expression "(*(byte *)(DAT_001e3cb0 + 0xb) & 0x40)" (( "(") (binary_expression "*(byte *)(DAT_001e3cb0 + 0xb) & 0x40" (pointer_expression "*(byte *)(DAT_001e3cb0 + 0xb)" (* "*") (cast_expression "(byte *)(DAT_001e3cb0 + 0xb)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_001e3cb0 + 0xb)" (( "(") (binary_expression "DAT_001e3cb0 + 0xb" (identifier "DAT_001e3cb0") (+ "+") (number_literal "0xb")) () ")")))) (& "&") (number_literal "0x40")) () ")")) (== "==") (number_literal "0")) () ")"))) () ")")) () ")"))) () ")")) () ")"))) () ")")) (compound_statement "{\n    FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);\n  }" ({ "{") (expression_statement "FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);" (call_expression "FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00)" (identifier "FUN_00117220") (argument_list "(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00)" (( "(") (binary_expression "DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00" (binary_expression "DAT_001e3d04 * 8 | DAT_001e3d08 << 6" (binary_expression "DAT_001e3d04 * 8" (identifier "DAT_001e3d04") (* "*") (number_literal "8")) (| "|") (binary_expression "DAT_001e3d08 << 6" (identifier "DAT_001e3d08") (<< "<<") (number_literal "6"))) (| "|") (identifier "_DAT_001e3d00")) () ")"))) (; ";")) (} "}"))) (if_statement "if (DAT_001e3c2c != 0) {\n    if (DAT_001e3c24 == 0) {\n      return;\n    }\n    uVar28 = 0;\n    uVar21 = DAT_001e3c24;\n    do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);\n  }" (if "if") (parenthesized_expression "(DAT_001e3c2c != 0)" (( "(") (binary_expression "DAT_001e3c2c != 0" (identifier "DAT_001e3c2c") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    if (DAT_001e3c24 == 0) {\n      return;\n    }\n    uVar28 = 0;\n    uVar21 = DAT_001e3c24;\n    do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);\n  }" ({ "{") (if_statement "if (DAT_001e3c24 == 0) {\n      return;\n    }" (if "if") (parenthesized_expression "(DAT_001e3c24 == 0)" (( "(") (binary_expression "DAT_001e3c24 == 0" (identifier "DAT_001e3c24") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      return;\n    }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "uVar28 = 0;" (assignment_expression "uVar28 = 0" (identifier "uVar28") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar21 = DAT_001e3c24;" (assignment_expression "uVar21 = DAT_001e3c24" (identifier "uVar21") (= "=") (identifier "DAT_001e3c24")) (; ";")) (do_statement "do {\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    } while ((uint)uVar28 < uVar21);" (do "do") (compound_statement "{\n      uVar22 = DAT_001e3c24;\n      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }\nLAB_00138326:\n      uVar21 = uVar22;\n      uVar28 = uVar28 + 1;\n    }" ({ "{") (expression_statement "uVar22 = DAT_001e3c24;" (assignment_expression "uVar22 = DAT_001e3c24" (identifier "uVar22") (= "=") (identifier "DAT_001e3c24")) (; ";")) (if_statement "if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }" (if "if") (parenthesized_expression "((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0)" (( "(") (binary_expression "(*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0" (parenthesized_expression "(*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f)" (( "(") (binary_expression "*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f" (pointer_expression "*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2)" (* "*") (cast_expression "(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)&DAT_001e3c38 + uVar28 * 8 + 2)" (( "(") (binary_expression "(long)&DAT_001e3c38 + uVar28 * 8 + 2" (binary_expression "(long)&DAT_001e3c38 + uVar28 * 8" (cast_expression "(long)&DAT_001e3c38" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (pointer_expression "&DAT_001e3c38" (& "&") (identifier "DAT_001e3c38"))) (+ "+") (binary_expression "uVar28 * 8" (identifier "uVar28") (* "*") (number_literal "8"))) (+ "+") (number_literal "2")) () ")")))) (& "&") (number_literal "0x1f")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        lVar23 = (long)(&DAT_001e3c60)[uVar28];\n        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n        bVar3 = bVar15 >> 4 & 1;\n        if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }\n      }" ({ "{") (expression_statement "lVar23 = (long)(&DAT_001e3c60)[uVar28];" (assignment_expression "lVar23 = (long)(&DAT_001e3c60)[uVar28]" (identifier "lVar23") (= "=") (cast_expression "(long)(&DAT_001e3c60)[uVar28]" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" (( "(") (pointer_expression "&DAT_001e3c60" (& "&") (identifier "DAT_001e3c60")) () ")")) ([ "[") (identifier "uVar28") (] "]")))) (; ";")) (expression_statement "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);" (assignment_expression "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" (identifier "bVar15") (= "=") (pointer_expression "*(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" (* "*") (cast_expression "(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" (( "(") (binary_expression "(long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2" (binary_expression "(long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8" (cast_expression "(long)&DAT_001e3c38" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (pointer_expression "&DAT_001e3c38" (& "&") (identifier "DAT_001e3c38"))) (+ "+") (binary_expression "(uVar28 & 0xffffffff) * 8" (parenthesized_expression "(uVar28 & 0xffffffff)" (( "(") (binary_expression "uVar28 & 0xffffffff" (identifier "uVar28") (& "&") (number_literal "0xffffffff")) () ")")) (* "*") (number_literal "8"))) (+ "+") (number_literal "2")) () ")"))))) (; ";")) (expression_statement "bVar3 = bVar15 >> 4 & 1;" (assignment_expression "bVar3 = bVar15 >> 4 & 1" (identifier "bVar3") (= "=") (binary_expression "bVar15 >> 4 & 1" (binary_expression "bVar15 >> 4" (identifier "bVar15") (>> ">>") (number_literal "4")) (& "&") (number_literal "1"))) (; ";")) (if_statement "if (*(char *)(lVar23 + 0x18) == '\x02') {\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }\n        else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }" (if "if") (parenthesized_expression "(*(char *)(lVar23 + 0x18) == '\x02')" (( "(") (binary_expression "*(char *)(lVar23 + 0x18) == '\x02'" (pointer_expression "*(char *)(lVar23 + 0x18)" (* "*") (cast_expression "(char *)(lVar23 + 0x18)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar23 + 0x18)" (( "(") (binary_expression "lVar23 + 0x18" (identifier "lVar23") (+ "+") (number_literal "0x18")) () ")")))) (== "==") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'"))) () ")")) (compound_statement "{\n          lVar23 = *(long *)(lVar23 + 0x10);\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          uVar11 = FUN_00135250(lVar23,cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n          uVar22 = DAT_001e3c24;\n        }" ({ "{") (expression_statement "lVar23 = *(long *)(lVar23 + 0x10);" (assignment_expression "lVar23 = *(long *)(lVar23 + 0x10)" (identifier "lVar23") (= "=") (pointer_expression "*(long *)(lVar23 + 0x10)" (* "*") (cast_expression "(long *)(lVar23 + 0x10)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar23 + 0x10)" (( "(") (binary_expression "lVar23 + 0x10" (identifier "lVar23") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (if_statement "if (bVar3 == 0) {\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }\n          else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }" (if "if") (parenthesized_expression "(bVar3 == 0)" (( "(") (binary_expression "bVar3 == 0" (identifier "bVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }\n          }" ({ "{") (if_statement "if ((bVar15 & 1) == 0) {\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }\n            else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }" (if "if") (parenthesized_expression "((bVar15 & 1) == 0)" (( "(") (binary_expression "(bVar15 & 1) == 0" (parenthesized_expression "(bVar15 & 1)" (( "(") (binary_expression "bVar15 & 1" (identifier "bVar15") (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              bVar15 = bVar15 >> 1 & 1;\n              cVar25 = (-(bVar15 == 0) & 2U) + 2;\n              cVar19 = (-(bVar15 == 0) & 2U) + 2;\n            }" ({ "{") (expression_statement "bVar15 = bVar15 >> 1 & 1;" (assignment_expression "bVar15 = bVar15 >> 1 & 1" (identifier "bVar15") (= "=") (binary_expression "bVar15 >> 1 & 1" (binary_expression "bVar15 >> 1" (identifier "bVar15") (>> ">>") (number_literal "1")) (& "&") (number_literal "1"))) (; ";")) (expression_statement "cVar25 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar25 = (-(bVar15 == 0) & 2U) + 2" (identifier "cVar25") (= "=") (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" (( "(") (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" (- "-") (parenthesized_expression "(bVar15 == 0)" (( "(") (binary_expression "bVar15 == 0" (identifier "bVar15") (== "==") (number_literal "0")) () ")"))) (& "&") (number_literal "2U")) () ")")) (+ "+") (number_literal "2"))) (; ";")) (expression_statement "cVar19 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar19 = (-(bVar15 == 0) & 2U) + 2" (identifier "cVar19") (= "=") (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" (( "(") (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" (- "-") (parenthesized_expression "(bVar15 == 0)" (( "(") (binary_expression "bVar15 == 0" (identifier "bVar15") (== "==") (number_literal "0")) () ")"))) (& "&") (number_literal "2U")) () ")")) (+ "+") (number_literal "2"))) (; ";")) (} "}")) (else_clause "else {\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }" (else "else") (compound_statement "{\n              cVar25 = '\x01';\n              cVar19 = '\x01';\n              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);\n            }" ({ "{") (expression_statement "cVar25 = '\x01';" (assignment_expression "cVar25 = '\x01'" (identifier "cVar25") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "cVar19 = '\x01';" (assignment_expression "cVar19 = '\x01'" (identifier "cVar19") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);" (assignment_expression "lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f)" (identifier "lVar23") (= "=") (binary_expression "lVar23 >> ((byte)DAT_001e3d38 & 0x3f)" (identifier "lVar23") (>> ">>") (parenthesized_expression "((byte)DAT_001e3d38 & 0x3f)" (( "(") (binary_expression "(byte)DAT_001e3d38 & 0x3f" (cast_expression "(byte)DAT_001e3d38" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "DAT_001e3d38")) (& "&") (number_literal "0x3f")) () ")")))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }" (else "else") (compound_statement "{\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }" ({ "{") (expression_statement "cVar25 = '\b';" (assignment_expression "cVar25 = '\b'" (identifier "cVar25") (= "=") (char_literal "'\b'" (' "'") (escape_sequence "\b") (' "'"))) (; ";")) (expression_statement "cVar19 = '\b';" (assignment_expression "cVar19 = '\b'" (identifier "cVar19") (= "=") (char_literal "'\b'" (' "'") (escape_sequence "\b") (' "'"))) (; ";")) (} "}")))) (expression_statement "uVar11 = FUN_00135250(lVar23,cVar19);" (assignment_expression "uVar11 = FUN_00135250(lVar23,cVar19)" (identifier "uVar11") (= "=") (call_expression "FUN_00135250(lVar23,cVar19)" (identifier "FUN_00135250") (argument_list "(lVar23,cVar19)" (( "(") (identifier "lVar23") (, ",") (identifier "cVar19") () ")")))) (; ";")) (expression_statement "uVar12 = FUN_00116fb0(cVar25);" (assignment_expression "uVar12 = FUN_00116fb0(cVar25)" (identifier "uVar12") (= "=") (call_expression "FUN_00116fb0(cVar25)" (identifier "FUN_00116fb0") (argument_list "(cVar25)" (( "(") (identifier "cVar25") () ")")))) (; ";")) (expression_statement "FUN_00131030(uVar12,uVar11,cVar19);" (call_expression "FUN_00131030(uVar12,uVar11,cVar19)" (identifier "FUN_00131030") (argument_list "(uVar12,uVar11,cVar19)" (( "(") (identifier "uVar12") (, ",") (identifier "uVar11") (, ",") (identifier "cVar19") () ")"))) (; ";")) (expression_statement "uVar22 = DAT_001e3c24;" (assignment_expression "uVar22 = DAT_001e3c24" (identifier "uVar22") (= "=") (identifier "DAT_001e3c24")) (; ";")) (} "}")) (else_clause "else {\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }" (else "else") (compound_statement "{\n          if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }\n          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;\n          uVar22 = uVar22 & 1;\n          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }\n          lVar16 = FUN_00116fb0(cVar19);\n          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);\n          lVar23 = DAT_001e4648;\n          if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }\nLAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);\n          lVar23 = DAT_001e3cb0;\n          uVar22 = DAT_001e3c24;\n          if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }\n        }" ({ "{") (if_statement "if (bVar3 == 0) {\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }\n          else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }" (if "if") (parenthesized_expression "(bVar3 == 0)" (( "(") (binary_expression "bVar3 == 0" (identifier "bVar3") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }\n            bVar3 = bVar15 >> 1;\n            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);\n            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;\n            uVar22 = (&DAT_001e3c88)[uVar28];\n          }" ({ "{") (if_statement "if ((bVar15 & 1) != 0) {\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }" (if "if") (parenthesized_expression "((bVar15 & 1) != 0)" (( "(") (binary_expression "(bVar15 & 1) != 0" (parenthesized_expression "(bVar15 & 1)" (( "(") (binary_expression "bVar15 & 1" (identifier "bVar15") (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");\n            }" ({ "{") (labeled_statement "LAB_00138302:\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");" (statement_identifier "LAB_00138302") (: ":") (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp")" (identifier "FUN_0011dd00") (argument_list "("../../gas/config/tc-i386.c",0x1ec2,"output_disp")" (( "(") (string_literal ""../../gas/config/tc-i386.c"" (" """) (string_content "../../gas/config/tc-i386.c") (" """)) (, ",") (number_literal "0x1ec2") (, ",") (string_literal ""output_disp"" (" """) (string_content "output_disp") (" """)) () ")"))) (; ";"))) (} "}"))) (expression_statement "bVar3 = bVar15 >> 1;" (assignment_expression "bVar3 = bVar15 >> 1" (identifier "bVar3") (= "=") (binary_expression "bVar15 >> 1" (identifier "bVar15") (>> ">>") (number_literal "1"))) (; ";")) (expression_statement "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);" (assignment_expression "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" (identifier "bVar15") (= "=") (pointer_expression "*(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" (* "*") (cast_expression "(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2)" (( "(") (binary_expression "(long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2" (binary_expression "(long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8" (cast_expression "(long)&DAT_001e3c38" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (pointer_expression "&DAT_001e3c38" (& "&") (identifier "DAT_001e3c38"))) (+ "+") (binary_expression "(uVar28 & 0xffffffff) * 8" (parenthesized_expression "(uVar28 & 0xffffffff)" (( "(") (binary_expression "uVar28 & 0xffffffff" (identifier "uVar28") (& "&") (number_literal "0xffffffff")) () ")")) (* "*") (number_literal "8"))) (+ "+") (number_literal "2")) () ")"))))) (; ";")) (expression_statement "cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;" (assignment_expression "cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2" (identifier "cVar19") (= "=") (binary_expression "(-((bVar3 & 1) == 0) & 2U) + 2" (parenthesized_expression "(-((bVar3 & 1) == 0) & 2U)" (( "(") (binary_expression "-((bVar3 & 1) == 0) & 2U" (unary_expression "-((bVar3 & 1) == 0)" (- "-") (parenthesized_expression "((bVar3 & 1) == 0)" (( "(") (binary_expression "(bVar3 & 1) == 0" (parenthesized_expression "(bVar3 & 1)" (( "(") (binary_expression "bVar3 & 1" (identifier "bVar3") (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")"))) (& "&") (number_literal "2U")) () ")")) (+ "+") (number_literal "2"))) (; ";")) (expression_statement "uVar22 = (&DAT_001e3c88)[uVar28];" (assignment_expression "uVar22 = (&DAT_001e3c88)[uVar28]" (identifier "uVar22") (= "=") (subscript_expression "(&DAT_001e3c88)[uVar28]" (parenthesized_expression "(&DAT_001e3c88)" (( "(") (pointer_expression "&DAT_001e3c88" (& "&") (identifier "DAT_001e3c88")) () ")")) ([ "[") (identifier "uVar28") (] "]"))) (; ";")) (} "}")) (else_clause "else {\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }" (else "else") (compound_statement "{\n            uVar22 = (&DAT_001e3c88)[uVar28];\n            if ((bVar15 & 1) != 0) goto LAB_00138302;\n            cVar19 = '\b';\n          }" ({ "{") (expression_statement "uVar22 = (&DAT_001e3c88)[uVar28];" (assignment_expression "uVar22 = (&DAT_001e3c88)[uVar28]" (identifier "uVar22") (= "=") (subscript_expression "(&DAT_001e3c88)[uVar28]" (parenthesized_expression "(&DAT_001e3c88)" (( "(") (pointer_expression "&DAT_001e3c88" (& "&") (identifier "DAT_001e3c88")) () ")")) ([ "[") (identifier "uVar28") (] "]"))) (; ";")) (if_statement "if ((bVar15 & 1) != 0) goto LAB_00138302;" (if "if") (parenthesized_expression "((bVar15 & 1) != 0)" (( "(") (binary_expression "(bVar15 & 1) != 0" (parenthesized_expression "(bVar15 & 1)" (( "(") (binary_expression "bVar15 & 1" (identifier "bVar15") (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00138302;" (goto "goto") (statement_identifier "LAB_00138302") (; ";"))) (expression_statement "cVar19 = '\b';" (assignment_expression "cVar19 = '\b'" (identifier "cVar19") (= "=") (char_literal "'\b'" (' "'") (escape_sequence "\b") (' "'"))) (; ";")) (} "}")))) (expression_statement "uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;" (assignment_expression "uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001" (identifier "uVar30") (= "=") (binary_expression "(ulong)(bVar15 >> 3) & 0xffffffff00000001" (call_expression "(ulong)(bVar15 >> 3)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(bVar15 >> 3)" (( "(") (binary_expression "bVar15 >> 3" (identifier "bVar15") (>> ">>") (number_literal "3")) () ")"))) (& "&") (number_literal "0xffffffff00000001"))) (; ";")) (expression_statement "uVar22 = uVar22 & 1;" (assignment_expression "uVar22 = uVar22 & 1" (identifier "uVar22") (= "=") (binary_expression "uVar22 & 1" (identifier "uVar22") (& "&") (number_literal "1"))) (; ";")) (if_statement "if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }" (if "if") (parenthesized_expression "((uVar22 != 0) && (DAT_001e3c34 != 0))" (( "(") (binary_expression "(uVar22 != 0) && (DAT_001e3c34 != 0)" (parenthesized_expression "(uVar22 != 0)" (( "(") (binary_expression "uVar22 != 0" (identifier "uVar22") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(DAT_001e3c34 != 0)" (( "(") (binary_expression "DAT_001e3c34 != 0" (identifier "DAT_001e3c34") (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n            uVar9 = 0;\n            cVar25 = '\0';\n            do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);\n            if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }\n          }" ({ "{") (expression_statement "uVar9 = 0;" (assignment_expression "uVar9 = 0" (identifier "uVar9") (= "=") (number_literal "0")) (; ";")) (expression_statement "cVar25 = '\0';" (assignment_expression "cVar25 = '\0'" (identifier "cVar25") (= "=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) (; ";")) (do_statement "do {\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            } while ((uint)uVar9 < uVar21);" (do "do") (compound_statement "{\n              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }\n              uVar9 = uVar9 + 1;\n            }" ({ "{") (if_statement "if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }" (if "if") (parenthesized_expression "((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0)" (( "(") (binary_expression "(*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0" (parenthesized_expression "(*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc)" (( "(") (binary_expression "*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc" (pointer_expression "*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1)" (* "*") (cast_expression "(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)&DAT_001e3c38 + uVar9 * 8 + 1)" (( "(") (binary_expression "(long)&DAT_001e3c38 + uVar9 * 8 + 1" (binary_expression "(long)&DAT_001e3c38 + uVar9 * 8" (cast_expression "(long)&DAT_001e3c38" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (pointer_expression "&DAT_001e3c38" (& "&") (identifier "DAT_001e3c38"))) (+ "+") (binary_expression "uVar9 * 8" (identifier "uVar9") (* "*") (number_literal "8"))) (+ "+") (number_literal "1")) () ")")))) (& "&") (number_literal "0xfc")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }\n                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);\n                if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }\n                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;\n              }" ({ "{") (if_statement "if (cVar25 != '\0') {\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }" (if "if") (parenthesized_expression "(cVar25 != '\0')" (( "(") (binary_expression "cVar25 != '\0'" (identifier "cVar25") (!= "!=") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                    \n                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");\n                }" ({ "{") (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp")" (identifier "FUN_0011dd00") (argument_list "("../../gas/config/tc-i386.c",0x1ed1,"output_disp")" (( "(") (string_literal ""../../gas/config/tc-i386.c"" (" """) (string_content "../../gas/config/tc-i386.c") (" """)) (, ",") (number_literal "0x1ed1") (, ",") (string_literal ""output_disp"" (" """) (string_content "output_disp") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);" (assignment_expression "bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1)" (identifier "bVar15") (= "=") (pointer_expression "*(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1)" (* "*") (cast_expression "(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1)" (( "(") (binary_expression "(long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1" (binary_expression "(long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8" (cast_expression "(long)&DAT_001e3c38" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (pointer_expression "&DAT_001e3c38" (& "&") (identifier "DAT_001e3c38"))) (+ "+") (binary_expression "(uVar9 & 0xffffffff) * 8" (parenthesized_expression "(uVar9 & 0xffffffff)" (( "(") (binary_expression "uVar9 & 0xffffffff" (identifier "uVar9") (& "&") (number_literal "0xffffffff")) () ")")) (* "*") (number_literal "8"))) (+ "+") (number_literal "1")) () ")"))))) (; ";")) (if_statement "if ((char)bVar15 < '\0') {\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }\n                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }" (if "if") (parenthesized_expression "((char)bVar15 < '\0')" (( "(") (binary_expression "(char)bVar15 < '\0'" (cast_expression "(char)bVar15" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "bVar15")) (< "<") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                  lVar16 = 8;\n                  cVar25 = '\b';\n                }" ({ "{") (expression_statement "lVar16 = 8;" (assignment_expression "lVar16 = 8" (identifier "lVar16") (= "=") (number_literal "8")) (; ";")) (expression_statement "cVar25 = '\b';" (assignment_expression "cVar25 = '\b'" (identifier "cVar25") (= "=") (char_literal "'\b'" (' "'") (escape_sequence "\b") (' "'"))) (; ";")) (} "}")) (else_clause "else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }" (else "else") (if_statement "if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }\n                else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }" (if "if") (parenthesized_expression "(((bVar15 & 4) == 0) && ((bVar15 & 8) == 0))" (( "(") (binary_expression "((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)" (parenthesized_expression "((bVar15 & 4) == 0)" (( "(") (binary_expression "(bVar15 & 4) == 0" (parenthesized_expression "(bVar15 & 4)" (( "(") (binary_expression "bVar15 & 4" (identifier "bVar15") (& "&") (number_literal "4")) () ")")) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "((bVar15 & 8) == 0)" (( "(") (binary_expression "(bVar15 & 8) == 0" (parenthesized_expression "(bVar15 & 8)" (( "(") (binary_expression "bVar15 & 8" (identifier "bVar15") (& "&") (number_literal "8")) () ")")) (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n                  bVar15 = bVar15 >> 4 & 1;\n                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;\n                  cVar25 = (-(bVar15 == 0) & 2U) + 2;\n                }" ({ "{") (expression_statement "bVar15 = bVar15 >> 4 & 1;" (assignment_expression "bVar15 = bVar15 >> 4 & 1" (identifier "bVar15") (= "=") (binary_expression "bVar15 >> 4 & 1" (binary_expression "bVar15 >> 4" (identifier "bVar15") (>> ">>") (number_literal "4")) (& "&") (number_literal "1"))) (; ";")) (expression_statement "lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;" (assignment_expression "lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2" (identifier "lVar16") (= "=") (binary_expression "(ulong)(-(uint)(bVar15 == 0) & 2) + 2" (call_expression "(ulong)(-(uint)(bVar15 == 0) & 2)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(-(uint)(bVar15 == 0) & 2)" (( "(") (binary_expression "-(uint)(bVar15 == 0) & 2" (unary_expression "-(uint)(bVar15 == 0)" (- "-") (call_expression "(uint)(bVar15 == 0)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(bVar15 == 0)" (( "(") (binary_expression "bVar15 == 0" (identifier "bVar15") (== "==") (number_literal "0")) () ")")))) (& "&") (number_literal "2")) () ")"))) (+ "+") (number_literal "2"))) (; ";")) (expression_statement "cVar25 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar25 = (-(bVar15 == 0) & 2U) + 2" (identifier "cVar25") (= "=") (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" (( "(") (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" (- "-") (parenthesized_expression "(bVar15 == 0)" (( "(") (binary_expression "bVar15 == 0" (identifier "bVar15") (== "==") (number_literal "0")) () ")"))) (& "&") (number_literal "2U")) () ")")) (+ "+") (number_literal "2"))) (; ";")) (} "}")) (else_clause "else {\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }" (else "else") (compound_statement "{\n                  lVar16 = 1;\n                  cVar25 = '\x01';\n                }" ({ "{") (expression_statement "lVar16 = 1;" (assignment_expression "lVar16 = 1" (identifier "lVar16") (= "=") (number_literal "1")) (; ";")) (expression_statement "cVar25 = '\x01';" (assignment_expression "cVar25 = '\x01'" (identifier "cVar25") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (} "}")))))) (expression_statement "*(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;" (assignment_expression "*(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16" (pointer_expression "*(long *)(lVar23 + 0x10)" (* "*") (cast_expression "(long *)(lVar23 + 0x10)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar23 + 0x10)" (( "(") (binary_expression "lVar23 + 0x10" (identifier "lVar23") (+ "+") (number_literal "0x10")) () ")")))) (= "=") (binary_expression "*(long *)(lVar23 + 0x10) - lVar16" (pointer_expression "*(long *)(lVar23 + 0x10)" (* "*") (cast_expression "(long *)(lVar23 + 0x10)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar23 + 0x10)" (( "(") (binary_expression "lVar23 + 0x10" (identifier "lVar23") (+ "+") (number_literal "0x10")) () ")")))) (- "-") (identifier "lVar16"))) (; ";")) (} "}"))) (expression_statement "uVar9 = uVar9 + 1;" (assignment_expression "uVar9 = uVar9 + 1" (identifier "uVar9") (= "=") (binary_expression "uVar9 + 1" (identifier "uVar9") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "((uint)uVar9 < uVar21)" (( "(") (binary_expression "(uint)uVar9 < uVar21" (cast_expression "(uint)uVar9" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar9")) (< "<") (identifier "uVar21")) () ")")) (; ";")) (if_statement "if (cVar25 == '\0') {\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }" (if "if") (parenthesized_expression "(cVar25 == '\0')" (( "(") (binary_expression "cVar25 == '\0'" (identifier "cVar25") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n                    \n              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");\n            }" ({ "{") (expression_statement "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");" (call_expression "FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp")" (identifier "FUN_0011dd00") (argument_list "("../../gas/config/tc-i386.c",0x1ed6,"output_disp")" (( "(") (string_literal ""../../gas/config/tc-i386.c"" (" """) (string_content "../../gas/config/tc-i386.c") (" """)) (, ",") (number_literal "0x1ed6") (, ",") (string_literal ""output_disp"" (" """) (string_content "output_disp") (" """)) () ")"))) (; ";")) (} "}"))) (} "}"))) (expression_statement "lVar16 = FUN_00116fb0(cVar19);" (assignment_expression "lVar16 = FUN_00116fb0(cVar19)" (identifier "lVar16") (= "=") (call_expression "FUN_00116fb0(cVar19)" (identifier "FUN_00116fb0") (argument_list "(cVar19)" (( "(") (identifier "cVar19") () ")")))) (; ";")) (expression_statement "uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);" (assignment_expression "uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28])" (identifier "uVar21") (= "=") (call_expression "FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28])" (identifier "FUN_00134ea0") (argument_list "(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28])" (( "(") (identifier "cVar19") (, ",") (identifier "uVar22") (, ",") (binary_expression "uVar30 & 0xffffffff" (identifier "uVar30") (& "&") (number_literal "0xffffffff")) (, ",") (subscript_expression "(&DAT_001e3c9c)[uVar28]" (parenthesized_expression "(&DAT_001e3c9c)" (( "(") (pointer_expression "&DAT_001e3c9c" (& "&") (identifier "DAT_001e3c9c")) () ")")) ([ "[") (identifier "uVar28") (] "]")) () ")")))) (; ";")) (expression_statement "lVar23 = DAT_001e4648;" (assignment_expression "lVar23 = DAT_001e4648" (identifier "lVar23") (= "=") (identifier "DAT_001e4648")) (; ";")) (if_statement "if (DAT_001e3a80 == 0) {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }" (if "if") (parenthesized_expression "(DAT_001e3a80 == 0)" (( "(") (binary_expression "DAT_001e3a80 == 0" (identifier "DAT_001e3a80") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n          }" ({ "{") (expression_statement "plVar14 = (&DAT_001e3c60)[uVar28];" (assignment_expression "plVar14 = (&DAT_001e3c60)[uVar28]" (identifier "plVar14") (= "=") (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" (( "(") (pointer_expression "&DAT_001e3c60" (& "&") (identifier "DAT_001e3c60")) () ")")) ([ "[") (identifier "uVar28") (] "]"))) (; ";")) (expression_statement "lVar16 = lVar16 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar16 = lVar16 - (DAT_001e4648 + 0x80)" (identifier "lVar16") (= "=") (binary_expression "lVar16 - (DAT_001e4648 + 0x80)" (identifier "lVar16") (- "-") (parenthesized_expression "(DAT_001e4648 + 0x80)" (( "(") (binary_expression "DAT_001e4648 + 0x80" (identifier "DAT_001e4648") (+ "+") (number_literal "0x80")) () ")")))) (; ";")) (} "}")) (else_clause "else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }" (else "else") (compound_statement "{\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }\n          }" ({ "{") (expression_statement "plVar14 = (&DAT_001e3c60)[uVar28];" (assignment_expression "plVar14 = (&DAT_001e3c60)[uVar28]" (identifier "plVar14") (= "=") (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" (( "(") (pointer_expression "&DAT_001e3c60" (& "&") (identifier "DAT_001e3c60")) () ")")) ([ "[") (identifier "uVar28") (] "]"))) (; ";")) (if_statement "if (DAT_001e3a80 == *plVar14) {\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }\n            else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }" (if "if") (parenthesized_expression "(DAT_001e3a80 == *plVar14)" (( "(") (binary_expression "DAT_001e3a80 == *plVar14" (identifier "DAT_001e3a80") (== "==") (pointer_expression "*plVar14" (* "*") (identifier "plVar14"))) () ")")) (compound_statement "{\n              if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }\n              lVar23 = DAT_001e4648;\n              if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }\n              if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }\n            }" ({ "{") (if_statement "if ((uVar21 == 2) || (uVar21 == 0x184)) {\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }\n              else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }" (if "if") (parenthesized_expression "((uVar21 == 2) || (uVar21 == 0x184))" (( "(") (binary_expression "(uVar21 == 2) || (uVar21 == 0x184)" (parenthesized_expression "(uVar21 == 2)" (( "(") (binary_expression "uVar21 == 2" (identifier "uVar21") (== "==") (number_literal "2")) () ")")) (|| "||") (parenthesized_expression "(uVar21 == 0x184)" (( "(") (binary_expression "uVar21 == 0x184" (identifier "uVar21") (== "==") (number_literal "0x184")) () ")"))) () ")")) (compound_statement "{\nLAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }\nLAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n              }" ({ "{") (labeled_statement "LAB_001386f0:\n                if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }" (statement_identifier "LAB_001386f0") (: ":") (if_statement "if ((char)plVar14[3] != '\x03') {\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }" (if "if") (parenthesized_expression "((char)plVar14[3] != '\x03')" (( "(") (binary_expression "(char)plVar14[3] != '\x03'" (cast_expression "(char)plVar14[3]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "plVar14[3]" (identifier "plVar14") ([ "[") (number_literal "3") (] "]"))) (!= "!=") (char_literal "'\x03'" (' "'") (escape_sequence "\x03") (' "'"))) () ")")) (compound_statement "{\n                  if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }\n                  goto LAB_001385b1;\n                }" ({ "{") (if_statement "if ((char)plVar14[3] == '\x13') {\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }" (if "if") (parenthesized_expression "((char)plVar14[3] == '\x13')" (( "(") (binary_expression "(char)plVar14[3] == '\x13'" (cast_expression "(char)plVar14[3]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "plVar14[3]" (identifier "plVar14") ([ "[") (number_literal "3") (] "]"))) (== "==") (char_literal "'\x13'" (' "'") (escape_sequence "\x13") (' "'"))) () ")")) (compound_statement "{\n                    uVar30 = (ulong)uVar21;\n                    lVar23 = FUN_0012bc00(plVar14[1]);\n                    uVar21 = (uint)uVar30;\n                    plVar14 = (&DAT_001e3c60)[uVar28];\n                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;\n                  }" ({ "{") (expression_statement "uVar30 = (ulong)uVar21;" (assignment_expression "uVar30 = (ulong)uVar21" (identifier "uVar30") (= "=") (cast_expression "(ulong)uVar21" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar21"))) (; ";")) (expression_statement "lVar23 = FUN_0012bc00(plVar14[1]);" (assignment_expression "lVar23 = FUN_0012bc00(plVar14[1])" (identifier "lVar23") (= "=") (call_expression "FUN_0012bc00(plVar14[1])" (identifier "FUN_0012bc00") (argument_list "(plVar14[1])" (( "(") (subscript_expression "plVar14[1]" (identifier "plVar14") ([ "[") (number_literal "1") (] "]")) () ")")))) (; ";")) (expression_statement "uVar21 = (uint)uVar30;" (assignment_expression "uVar21 = (uint)uVar30" (identifier "uVar21") (= "=") (cast_expression "(uint)uVar30" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar30"))) (; ";")) (expression_statement "plVar14 = (&DAT_001e3c60)[uVar28];" (assignment_expression "plVar14 = (&DAT_001e3c60)[uVar28]" (identifier "plVar14") (= "=") (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" (( "(") (pointer_expression "&DAT_001e3c60" (& "&") (identifier "DAT_001e3c60")) () ")")) ([ "[") (identifier "uVar28") (] "]"))) (; ";")) (if_statement "if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;" (if "if") (parenthesized_expression "(*(char *)(lVar23 + 0x18) == '\x14')" (( "(") (binary_expression "*(char *)(lVar23 + 0x18) == '\x14'" (pointer_expression "*(char *)(lVar23 + 0x18)" (* "*") (cast_expression "(char *)(lVar23 + 0x18)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar23 + 0x18)" (( "(") (binary_expression "lVar23 + 0x18" (identifier "lVar23") (+ "+") (number_literal "0x18")) () ")")))) (== "==") (char_literal "'\x14'" (' "'") (escape_sequence "\x14") (' "'"))) () ")")) (goto_statement "goto LAB_00138730;" (goto "goto") (statement_identifier "LAB_00138730") (; ";"))) (} "}"))) (goto_statement "goto LAB_001385b1;" (goto "goto") (statement_identifier "LAB_001385b1") (; ";")) (} "}")))) (labeled_statement "LAB_00138730:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);" (statement_identifier "LAB_00138730") (: ":") (expression_statement "lVar16 = lVar16 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar16 = lVar16 - (DAT_001e4648 + 0x80)" (identifier "lVar16") (= "=") (binary_expression "lVar16 - (DAT_001e4648 + 0x80)" (identifier "lVar16") (- "-") (parenthesized_expression "(DAT_001e4648 + 0x80)" (( "(") (binary_expression "DAT_001e4648 + 0x80" (identifier "DAT_001e4648") (+ "+") (number_literal "0x80")) () ")")))) (; ";"))) (} "}")) (else_clause "else {\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }" (else "else") (compound_statement "{\n                if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }\nLAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n                lVar23 = DAT_001e4648;\n                if (uVar21 != 9) goto LAB_001383d2;\n              }" ({ "{") (if_statement "if (uVar21 == 1) {\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }" (if "if") (parenthesized_expression "(uVar21 == 1)" (( "(") (binary_expression "uVar21 == 1" (identifier "uVar21") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n                  if (DAT_001e3b10 == 0) goto LAB_001383be;\n                  goto LAB_001386f0;\n                }" ({ "{") (if_statement "if (DAT_001e3b10 == 0) goto LAB_001383be;" (if "if") (parenthesized_expression "(DAT_001e3b10 == 0)" (( "(") (binary_expression "DAT_001e3b10 == 0" (identifier "DAT_001e3b10") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_001383be;" (goto "goto") (statement_identifier "LAB_001383be") (; ";"))) (goto_statement "goto LAB_001386f0;" (goto "goto") (statement_identifier "LAB_001386f0") (; ";")) (} "}"))) (labeled_statement "LAB_001385b1:\n                lVar16 = lVar16 - (DAT_001e4648 + 0x80);" (statement_identifier "LAB_001385b1") (: ":") (expression_statement "lVar16 = lVar16 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar16 = lVar16 - (DAT_001e4648 + 0x80)" (identifier "lVar16") (= "=") (binary_expression "lVar16 - (DAT_001e4648 + 0x80)" (identifier "lVar16") (- "-") (parenthesized_expression "(DAT_001e4648 + 0x80)" (( "(") (binary_expression "DAT_001e4648 + 0x80" (identifier "DAT_001e4648") (+ "+") (number_literal "0x80")) () ")")))) (; ";"))) (expression_statement "lVar23 = DAT_001e4648;" (assignment_expression "lVar23 = DAT_001e4648" (identifier "lVar23") (= "=") (identifier "DAT_001e4648")) (; ";")) (if_statement "if (uVar21 != 9) goto LAB_001383d2;" (if "if") (parenthesized_expression "(uVar21 != 9)" (( "(") (binary_expression "uVar21 != 9" (identifier "uVar21") (!= "!=") (number_literal "9")) () ")")) (goto_statement "goto LAB_001383d2;" (goto "goto") (statement_identifier "LAB_001383d2") (; ";"))) (} "}")))) (expression_statement "lVar23 = DAT_001e4648;" (assignment_expression "lVar23 = DAT_001e4648" (identifier "lVar23") (= "=") (identifier "DAT_001e4648")) (; ";")) (if_statement "if (lVar1 == DAT_001e4648) {\n                lVar17 = -lVar6;\n              }\n              else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }" (if "if") (parenthesized_expression "(lVar1 == DAT_001e4648)" (( "(") (binary_expression "lVar1 == DAT_001e4648" (identifier "lVar1") (== "==") (identifier "DAT_001e4648")) () ")")) (compound_statement "{\n                lVar17 = -lVar6;\n              }" ({ "{") (expression_statement "lVar17 = -lVar6;" (assignment_expression "lVar17 = -lVar6" (identifier "lVar17") (= "=") (unary_expression "-lVar6" (- "-") (identifier "lVar6"))) (; ";")) (} "}")) (else_clause "else {\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }" (else "else") (compound_statement "{\n                uVar30 = *(ulong *)(lVar1 + 0x10);\n                lVar17 = uVar30 - lVar6;\n                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }\n              }" ({ "{") (expression_statement "uVar30 = *(ulong *)(lVar1 + 0x10);" (assignment_expression "uVar30 = *(ulong *)(lVar1 + 0x10)" (identifier "uVar30") (= "=") (pointer_expression "*(ulong *)(lVar1 + 0x10)" (* "*") (cast_expression "(ulong *)(lVar1 + 0x10)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar1 + 0x10)" (( "(") (binary_expression "lVar1 + 0x10" (identifier "lVar1") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "lVar17 = uVar30 - lVar6;" (assignment_expression "lVar17 = uVar30 - lVar6" (identifier "lVar17") (= "=") (binary_expression "uVar30 - lVar6" (identifier "uVar30") (- "-") (identifier "lVar6"))) (; ";")) (for_statement "for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));\n                    lVar26 = *(long *)(lVar26 + 0x38)) {\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }" (for "for") (( "(") (assignment_expression "lVar26 = *(long *)(lVar1 + 0x38)" (identifier "lVar26") (= "=") (pointer_expression "*(long *)(lVar1 + 0x38)" (* "*") (cast_expression "(long *)(lVar1 + 0x38)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar1 + 0x38)" (( "(") (binary_expression "lVar1 + 0x38" (identifier "lVar1") (+ "+") (number_literal "0x38")) () ")"))))) (; ";") (parenthesized_expression "(lVar26 != 0 && (lVar26 != DAT_001e4648))" (( "(") (binary_expression "lVar26 != 0 && (lVar26 != DAT_001e4648)" (binary_expression "lVar26 != 0" (identifier "lVar26") (!= "!=") (number_literal "0")) (&& "&&") (parenthesized_expression "(lVar26 != DAT_001e4648)" (( "(") (binary_expression "lVar26 != DAT_001e4648" (identifier "lVar26") (!= "!=") (identifier "DAT_001e4648")) () ")"))) () ")")) (; ";") (assignment_expression "lVar26 = *(long *)(lVar26 + 0x38)" (identifier "lVar26") (= "=") (pointer_expression "*(long *)(lVar26 + 0x38)" (* "*") (cast_expression "(long *)(lVar26 + 0x38)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar26 + 0x38)" (( "(") (binary_expression "lVar26 + 0x38" (identifier "lVar26") (+ "+") (number_literal "0x38")) () ")"))))) () ")") (compound_statement "{\n                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);\n                }" ({ "{") (expression_statement "lVar17 = lVar17 + *(long *)(lVar26 + 0x10);" (assignment_expression "lVar17 = lVar17 + *(long *)(lVar26 + 0x10)" (identifier "lVar17") (= "=") (binary_expression "lVar17 + *(long *)(lVar26 + 0x10)" (identifier "lVar17") (+ "+") (pointer_expression "*(long *)(lVar26 + 0x10)" (* "*") (cast_expression "(long *)(lVar26 + 0x10)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar26 + 0x10)" (( "(") (binary_expression "lVar26 + 0x10" (identifier "lVar26") (+ "+") (number_literal "0x10")) () ")")))))) (; ";")) (} "}"))) (} "}")))) (if_statement "if (DAT_001e3b10 == 0) {\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }\n              else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }" (if "if") (parenthesized_expression "(DAT_001e3b10 == 0)" (( "(") (binary_expression "DAT_001e3b10 == 0" (identifier "DAT_001e3b10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                plVar14[2] = plVar14[2] + lVar16 + lVar17;\n                uVar21 = 0x16b;\n              }" ({ "{") (expression_statement "plVar14[2] = plVar14[2] + lVar16 + lVar17;" (assignment_expression "plVar14[2] = plVar14[2] + lVar16 + lVar17" (subscript_expression "plVar14[2]" (identifier "plVar14") ([ "[") (number_literal "2") (] "]")) (= "=") (binary_expression "plVar14[2] + lVar16 + lVar17" (binary_expression "plVar14[2] + lVar16" (subscript_expression "plVar14[2]" (identifier "plVar14") ([ "[") (number_literal "2") (] "]")) (+ "+") (identifier "lVar16")) (+ "+") (identifier "lVar17"))) (; ";")) (expression_statement "uVar21 = 0x16b;" (assignment_expression "uVar21 = 0x16b" (identifier "uVar21") (= "=") (number_literal "0x16b")) (; ";")) (} "}")) (else_clause "else {\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }" (else "else") (compound_statement "{\n                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;\n              }" ({ "{") (expression_statement "uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;" (assignment_expression "uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e" (identifier "uVar21") (= "=") (binary_expression "(uint)(uVar21 == 1) * 3 + 0x18e" (binary_expression "(uint)(uVar21 == 1) * 3" (call_expression "(uint)(uVar21 == 1)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar21 == 1)" (( "(") (binary_expression "uVar21 == 1" (identifier "uVar21") (== "==") (number_literal "1")) () ")"))) (* "*") (number_literal "3")) (+ "+") (number_literal "0x18e"))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }" (else "else") (compound_statement "{\nLAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);\n            }" ({ "{") (labeled_statement "LAB_001383be:\n              lVar16 = lVar16 - (DAT_001e4648 + 0x80);" (statement_identifier "LAB_001383be") (: ":") (expression_statement "lVar16 = lVar16 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar16 = lVar16 - (DAT_001e4648 + 0x80)" (identifier "lVar16") (= "=") (binary_expression "lVar16 - (DAT_001e4648 + 0x80)" (identifier "lVar16") (- "-") (parenthesized_expression "(DAT_001e4648 + 0x80)" (( "(") (binary_expression "DAT_001e4648 + 0x80" (identifier "DAT_001e4648") (+ "+") (number_literal "0x80")) () ")")))) (; ";"))) (} "}")))) (} "}")))) (labeled_statement "LAB_001383d2:\n          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);" (statement_identifier "LAB_001383d2") (: ":") (expression_statement "pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);" (assignment_expression "pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30)" (identifier "pbVar8") (= "=") (cast_expression "(byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30)" (identifier "FUN_0012ee00") (argument_list "(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30)" (( "(") (identifier "lVar23") (, ",") (identifier "lVar16") (, ",") (identifier "cVar19") (, ",") (identifier "plVar14") (, ",") (identifier "uVar22") (, ",") (identifier "uVar21") (, ",") (identifier "uVar30") () ")"))))) (; ";"))) (expression_statement "lVar23 = DAT_001e3cb0;" (assignment_expression "lVar23 = DAT_001e3cb0" (identifier "lVar23") (= "=") (identifier "DAT_001e3cb0")) (; ";")) (expression_statement "uVar22 = DAT_001e3c24;" (assignment_expression "uVar22 = DAT_001e3c24" (identifier "uVar22") (= "=") (identifier "DAT_001e3c24")) (; ";")) (if_statement "if (DAT_001e3ce7 == '\0') {\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }" (if "if") (parenthesized_expression "(DAT_001e3ce7 == '\0')" (( "(") (binary_expression "DAT_001e3ce7 == '\0'" (identifier "DAT_001e3ce7") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;\n          }" ({ "{") (if_statement "if (DAT_001da788 == 0) {\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }\n            else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;" (if "if") (parenthesized_expression "(DAT_001da788 == 0)" (( "(") (binary_expression "DAT_001da788 == 0" (identifier "DAT_001da788") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }\n            }" ({ "{") (if_statement "if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }" (if "if") (parenthesized_expression "(DAT_001e3cf4 == 0 && DAT_001e3b10 == 0)" (( "(") (binary_expression "DAT_001e3cf4 == 0 && DAT_001e3b10 == 0" (binary_expression "DAT_001e3cf4 == 0" (identifier "DAT_001e3cf4") (== "==") (number_literal "0")) (&& "&&") (binary_expression "DAT_001e3b10 == 0" (identifier "DAT_001e3b10") (== "==") (number_literal "0"))) () ")")) (compound_statement "{\nLAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;\n              }" ({ "{") (labeled_statement "LAB_00138410:\n                if (DAT_001e3cec == 5) goto LAB_0013841d;" (statement_identifier "LAB_00138410") (: ":") (if_statement "if (DAT_001e3cec == 5) goto LAB_0013841d;" (if "if") (parenthesized_expression "(DAT_001e3cec == 5)" (( "(") (binary_expression "DAT_001e3cec == 5" (identifier "DAT_001e3cec") (== "==") (number_literal "5")) () ")")) (goto_statement "goto LAB_0013841d;" (goto "goto") (statement_identifier "LAB_0013841d") (; ";")))) (} "}"))) (} "}")) (else_clause "else if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;" (else "else") (if_statement "if (DAT_001e3cf4 == 2) {\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }\n            else if (DAT_001e3cf4 == 0) goto LAB_00138410;" (if "if") (parenthesized_expression "(DAT_001e3cf4 == 2)" (( "(") (binary_expression "DAT_001e3cf4 == 2" (identifier "DAT_001e3cf4") (== "==") (number_literal "2")) () ")")) (compound_statement "{\nLAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;\n              if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }\n            }" ({ "{") (labeled_statement "LAB_0013841d:\n              if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;" (statement_identifier "LAB_0013841d") (: ":") (if_statement "if (DAT_001e3c24 == 1) {\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }\n              else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;" (if "if") (parenthesized_expression "(DAT_001e3c24 == 1)" (( "(") (binary_expression "DAT_001e3c24 == 1" (identifier "DAT_001e3c24") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }\n              }" ({ "{") (if_statement "if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }" (if "if") (parenthesized_expression "((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0))" (( "(") (binary_expression "(DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)" (parenthesized_expression "(DAT_001e3bcc != 0xff)" (( "(") (binary_expression "DAT_001e3bcc != 0xff" (identifier "DAT_001e3bcc") (!= "!=") (number_literal "0xff")) () ")")) (|| "||") (parenthesized_expression "((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)" (( "(") (binary_expression "(DAT_001e3cf0 - 2U & 0xfffffffd) != 0" (parenthesized_expression "(DAT_001e3cf0 - 2U & 0xfffffffd)" (( "(") (binary_expression "DAT_001e3cf0 - 2U & 0xfffffffd" (binary_expression "DAT_001e3cf0 - 2U" (identifier "DAT_001e3cf0") (- "-") (number_literal "2U")) (& "&") (number_literal "0xfffffffd")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n                  if (DAT_001e3c34 == 0) {\n                    return;\n                  }\n                  goto LAB_00137e9a;\n                }" ({ "{") (if_statement "if (DAT_001e3c34 == 0) {\n                    return;\n                  }" (if "if") (parenthesized_expression "(DAT_001e3c34 == 0)" (( "(") (binary_expression "DAT_001e3c34 == 0" (identifier "DAT_001e3c34") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                    return;\n                  }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (goto_statement "goto LAB_00137e9a;" (goto "goto") (statement_identifier "LAB_00137e9a") (; ";")) (} "}"))) (} "}")) (else_clause "else if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;" (else "else") (if_statement "if ((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;" (if "if") (parenthesized_expression "((DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3))))" (( "(") (binary_expression "(DAT_001e3c24 != 2) ||\n                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))" (parenthesized_expression "(DAT_001e3c24 != 2)" (( "(") (binary_expression "DAT_001e3c24 != 2" (identifier "DAT_001e3c24") (!= "!=") (number_literal "2")) () ")")) (|| "||") (parenthesized_expression "(((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)))" (( "(") (parenthesized_expression "((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3))" (( "(") (binary_expression "(DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&\n                       ((DAT_001e3bcc & 199) != 3)" (parenthesized_expression "(DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85))" (( "(") (binary_expression "DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)" (binary_expression "DAT_001e3bcc != 0x8b" (identifier "DAT_001e3bcc") (!= "!=") (number_literal "0x8b")) (&& "&&") (parenthesized_expression "(DAT_001e3bcc != 0x85)" (( "(") (binary_expression "DAT_001e3bcc != 0x85" (identifier "DAT_001e3bcc") (!= "!=") (number_literal "0x85")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((DAT_001e3bcc & 199) != 3)" (( "(") (binary_expression "(DAT_001e3bcc & 199) != 3" (parenthesized_expression "(DAT_001e3bcc & 199)" (( "(") (binary_expression "DAT_001e3bcc & 199" (identifier "DAT_001e3bcc") (& "&") (number_literal "199")) () ")")) (!= "!=") (number_literal "3")) () ")"))) () ")")) () ")"))) () ")")) (goto_statement "goto LAB_00138326;" (goto "goto") (statement_identifier "LAB_00138326") (; ";")))))) (if_statement "if (DAT_001e3b10 == 0) {\n                *pbVar8 = *pbVar8 | 0x10;\n              }\n              else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }" (if "if") (parenthesized_expression "(DAT_001e3b10 == 0)" (( "(") (binary_expression "DAT_001e3b10 == 0" (identifier "DAT_001e3b10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                *pbVar8 = *pbVar8 | 0x10;\n              }" ({ "{") (expression_statement "*pbVar8 = *pbVar8 | 0x10;" (assignment_expression "*pbVar8 = *pbVar8 | 0x10" (pointer_expression "*pbVar8" (* "*") (identifier "pbVar8")) (= "=") (binary_expression "*pbVar8 | 0x10" (pointer_expression "*pbVar8" (* "*") (identifier "pbVar8")) (| "|") (number_literal "0x10"))) (; ";")) (} "}")) (else_clause "else {\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }" (else "else") (compound_statement "{\n                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';\n                *pbVar8 = bVar15;\n                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }\n              }" ({ "{") (expression_statement "bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';" (assignment_expression "bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b'" (identifier "bVar15") (= "=") (binary_expression "*pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b'" (binary_expression "*pbVar8 & 0xf7" (pointer_expression "*pbVar8" (* "*") (identifier "pbVar8")) (& "&") (number_literal "0xf7")) (| "|") (binary_expression "(DAT_001e3cf8 != 0) * '\b'" (parenthesized_expression "(DAT_001e3cf8 != 0)" (( "(") (binary_expression "DAT_001e3cf8 != 0" (identifier "DAT_001e3cf8") (!= "!=") (number_literal "0")) () ")")) (* "*") (char_literal "'\b'" (' "'") (escape_sequence "\b") (' "'"))))) (; ";")) (expression_statement "*pbVar8 = bVar15;" (assignment_expression "*pbVar8 = bVar15" (pointer_expression "*pbVar8" (* "*") (identifier "pbVar8")) (= "=") (identifier "bVar15")) (; ";")) (if_statement "if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {\n                  *pbVar8 = bVar15 | 0x10;\n                }" (if "if") (parenthesized_expression "((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11)))" (( "(") (binary_expression "(lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))" (parenthesized_expression "(lVar23 != 0)" (( "(") (binary_expression "lVar23 != 0" (identifier "lVar23") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(0xfd < *(byte *)(lVar23 + 0x11))" (( "(") (binary_expression "0xfd < *(byte *)(lVar23 + 0x11)" (number_literal "0xfd") (< "<") (pointer_expression "*(byte *)(lVar23 + 0x11)" (* "*") (cast_expression "(byte *)(lVar23 + 0x11)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar23 + 0x11)" (( "(") (binary_expression "lVar23 + 0x11" (identifier "lVar23") (+ "+") (number_literal "0x11")) () ")"))))) () ")"))) () ")")) (compound_statement "{\n                  *pbVar8 = bVar15 | 0x10;\n                }" ({ "{") (expression_statement "*pbVar8 = bVar15 | 0x10;" (assignment_expression "*pbVar8 = bVar15 | 0x10" (pointer_expression "*pbVar8" (* "*") (identifier "pbVar8")) (= "=") (binary_expression "bVar15 | 0x10" (identifier "bVar15") (| "|") (number_literal "0x10"))) (; ";")) (} "}"))) (} "}")))) (} "}")) (else_clause "else if (DAT_001e3cf4 == 0) goto LAB_00138410;" (else "else") (if_statement "if (DAT_001e3cf4 == 0) goto LAB_00138410;" (if "if") (parenthesized_expression "(DAT_001e3cf4 == 0)" (( "(") (binary_expression "DAT_001e3cf4 == 0" (identifier "DAT_001e3cf4") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00138410;" (goto "goto") (statement_identifier "LAB_00138410") (; ";"))))))) (} "}"))) (} "}")))) (} "}"))) (labeled_statement "LAB_00138326:\n      uVar21 = uVar22;" (statement_identifier "LAB_00138326") (: ":") (expression_statement "uVar21 = uVar22;" (assignment_expression "uVar21 = uVar22" (identifier "uVar21") (= "=") (identifier "uVar22")) (; ";"))) (expression_statement "uVar28 = uVar28 + 1;" (assignment_expression "uVar28 = uVar28 + 1" (identifier "uVar28") (= "=") (binary_expression "uVar28 + 1" (identifier "uVar28") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "((uint)uVar28 < uVar21)" (( "(") (binary_expression "(uint)uVar28 < uVar21" (cast_expression "(uint)uVar28" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "uVar28")) (< "<") (identifier "uVar21")) () ")")) (; ";")) (} "}"))) (if_statement "if ((DAT_001e3c34 != 0) && (DAT_001e3c24 != 0)) {\nLAB_00137e9a:\n    uVar28 = 0;\n    do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);\n  }" (if "if") (parenthesized_expression "((DAT_001e3c34 != 0) && (DAT_001e3c24 != 0))" (( "(") (binary_expression "(DAT_001e3c34 != 0) && (DAT_001e3c24 != 0)" (parenthesized_expression "(DAT_001e3c34 != 0)" (( "(") (binary_expression "DAT_001e3c34 != 0" (identifier "DAT_001e3c34") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(DAT_001e3c24 != 0)" (( "(") (binary_expression "DAT_001e3c24 != 0" (identifier "DAT_001e3c24") (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\nLAB_00137e9a:\n    uVar28 = 0;\n    do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);\n  }" ({ "{") (labeled_statement "LAB_00137e9a:\n    uVar28 = 0;" (statement_identifier "LAB_00137e9a") (: ":") (expression_statement "uVar28 = 0;" (assignment_expression "uVar28 = 0" (identifier "uVar28") (= "=") (number_literal "0")) (; ";"))) (do_statement "do {\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    } while (uVar21 < DAT_001e3c24);" (do "do") (compound_statement "{\n      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }\n      uVar21 = (int)uVar28 + 1;\n      uVar28 = (ulong)uVar21;\n    }" ({ "{") (if_statement "if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }" (if "if") (parenthesized_expression "(((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0))" (( "(") (binary_expression "((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&\n         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)" (parenthesized_expression "((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28))" (( "(") (binary_expression "(DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)" (parenthesized_expression "(DAT_001e3d28 == 0)" (( "(") (binary_expression "DAT_001e3d28 == 0" (identifier "DAT_001e3d28") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(*(int *)(DAT_001e3d28 + 4) != (int)uVar28)" (( "(") (binary_expression "*(int *)(DAT_001e3d28 + 4) != (int)uVar28" (pointer_expression "*(int *)(DAT_001e3d28 + 4)" (* "*") (cast_expression "(int *)(DAT_001e3d28 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(DAT_001e3d28 + 4)" (( "(") (binary_expression "DAT_001e3d28 + 4" (identifier "DAT_001e3d28") (+ "+") (number_literal "4")) () ")")))) (!= "!=") (cast_expression "(int)uVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar28"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)" (( "(") (binary_expression "(*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0" (parenthesized_expression "(*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc)" (( "(") (binary_expression "*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc" (pointer_expression "*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" (* "*") (cast_expression "(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" (( "(") (binary_expression "(long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1" (binary_expression "(long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8" (cast_expression "(long)&DAT_001e3bc8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (pointer_expression "&DAT_001e3bc8" (& "&") (identifier "DAT_001e3bc8"))) (+ "+") (binary_expression "(uVar28 + 0xe) * 8" (parenthesized_expression "(uVar28 + 0xe)" (( "(") (binary_expression "uVar28 + 0xe" (identifier "uVar28") (+ "+") (number_literal "0xe")) () ")")) (* "*") (number_literal "8"))) (+ "+") (number_literal "1")) () ")")))) (& "&") (number_literal "0xfc")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);\n        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }\n      }" ({ "{") (expression_statement "bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);" (assignment_expression "bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" (identifier "bVar15") (= "=") (pointer_expression "*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" (* "*") (cast_expression "(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1)" (( "(") (binary_expression "(long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1" (binary_expression "(long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8" (cast_expression "(long)&DAT_001e3bc8" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (pointer_expression "&DAT_001e3bc8" (& "&") (identifier "DAT_001e3bc8"))) (+ "+") (binary_expression "(uVar28 + 0xe) * 8" (parenthesized_expression "(uVar28 + 0xe)" (( "(") (binary_expression "uVar28 + 0xe" (identifier "uVar28") (+ "+") (number_literal "0xe")) () ")")) (* "*") (number_literal "8"))) (+ "+") (number_literal "1")) () ")"))))) (; ";")) (if_statement "if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }\n        else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }" (if "if") (parenthesized_expression "(*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02')" (( "(") (binary_expression "*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02'" (pointer_expression "*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18)" (* "*") (cast_expression "(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)(&DAT_001e3c60)[uVar28] + 0x18)" (( "(") (binary_expression "(long)(&DAT_001e3c60)[uVar28] + 0x18" (cast_expression "(long)(&DAT_001e3c60)[uVar28]" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" (( "(") (pointer_expression "&DAT_001e3c60" (& "&") (identifier "DAT_001e3c60")) () ")")) ([ "[") (identifier "uVar28") (] "]"))) (+ "+") (number_literal "0x18")) () ")")))) (== "==") (char_literal "'\x02'" (' "'") (escape_sequence "\x02") (' "'"))) () ")")) (compound_statement "{\n          if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }\n          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);\n          uVar12 = FUN_00116fb0(cVar25);\n          FUN_00131030(uVar12,uVar11,cVar19);\n        }" ({ "{") (if_statement "if ((char)bVar15 < '\0') {\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }" (if "if") (parenthesized_expression "((char)bVar15 < '\0')" (( "(") (binary_expression "(char)bVar15 < '\0'" (cast_expression "(char)bVar15" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "bVar15")) (< "<") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            cVar25 = '\b';\n            cVar19 = '\b';\n          }" ({ "{") (expression_statement "cVar25 = '\b';" (assignment_expression "cVar25 = '\b'" (identifier "cVar25") (= "=") (char_literal "'\b'" (' "'") (escape_sequence "\b") (' "'"))) (; ";")) (expression_statement "cVar19 = '\b';" (assignment_expression "cVar19 = '\b'" (identifier "cVar19") (= "=") (char_literal "'\b'" (' "'") (escape_sequence "\b") (' "'"))) (; ";")) (} "}")) (else_clause "else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }" (else "else") (if_statement "if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }" (if "if") (parenthesized_expression "(((bVar15 & 4) == 0) && ((bVar15 & 8) == 0))" (( "(") (binary_expression "((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)" (parenthesized_expression "((bVar15 & 4) == 0)" (( "(") (binary_expression "(bVar15 & 4) == 0" (parenthesized_expression "(bVar15 & 4)" (( "(") (binary_expression "bVar15 & 4" (identifier "bVar15") (& "&") (number_literal "4")) () ")")) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "((bVar15 & 8) == 0)" (( "(") (binary_expression "(bVar15 & 8) == 0" (parenthesized_expression "(bVar15 & 8)" (( "(") (binary_expression "bVar15 & 8" (identifier "bVar15") (& "&") (number_literal "8")) () ")")) (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }" ({ "{") (expression_statement "bVar15 = bVar15 >> 4 & 1;" (assignment_expression "bVar15 = bVar15 >> 4 & 1" (identifier "bVar15") (= "=") (binary_expression "bVar15 >> 4 & 1" (binary_expression "bVar15 >> 4" (identifier "bVar15") (>> ">>") (number_literal "4")) (& "&") (number_literal "1"))) (; ";")) (expression_statement "cVar25 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar25 = (-(bVar15 == 0) & 2U) + 2" (identifier "cVar25") (= "=") (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" (( "(") (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" (- "-") (parenthesized_expression "(bVar15 == 0)" (( "(") (binary_expression "bVar15 == 0" (identifier "bVar15") (== "==") (number_literal "0")) () ")"))) (& "&") (number_literal "2U")) () ")")) (+ "+") (number_literal "2"))) (; ";")) (expression_statement "cVar19 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar19 = (-(bVar15 == 0) & 2U) + 2" (identifier "cVar19") (= "=") (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" (( "(") (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" (- "-") (parenthesized_expression "(bVar15 == 0)" (( "(") (binary_expression "bVar15 == 0" (identifier "bVar15") (== "==") (number_literal "0")) () ")"))) (& "&") (number_literal "2U")) () ")")) (+ "+") (number_literal "2"))) (; ";")) (} "}")) (else_clause "else {\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }" (else "else") (compound_statement "{\n            cVar25 = '\x01';\n            cVar19 = '\x01';\n          }" ({ "{") (expression_statement "cVar25 = '\x01';" (assignment_expression "cVar25 = '\x01'" (identifier "cVar25") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "cVar19 = '\x01';" (assignment_expression "cVar19 = '\x01'" (identifier "cVar19") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (} "}")))))) (expression_statement "uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);" (assignment_expression "uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19)" (identifier "uVar11") (= "=") (call_expression "FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19)" (identifier "FUN_00135250") (argument_list "(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19)" (( "(") (pointer_expression "*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10)" (* "*") (cast_expression "(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)(&DAT_001e3c60)[uVar28] + 0x10)" (( "(") (binary_expression "(long)(&DAT_001e3c60)[uVar28] + 0x10" (cast_expression "(long)(&DAT_001e3c60)[uVar28]" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" (( "(") (pointer_expression "&DAT_001e3c60" (& "&") (identifier "DAT_001e3c60")) () ")")) ([ "[") (identifier "uVar28") (] "]"))) (+ "+") (number_literal "0x10")) () ")")))) (, ",") (identifier "cVar19") () ")")))) (; ";")) (expression_statement "uVar12 = FUN_00116fb0(cVar25);" (assignment_expression "uVar12 = FUN_00116fb0(cVar25)" (identifier "uVar12") (= "=") (call_expression "FUN_00116fb0(cVar25)" (identifier "FUN_00116fb0") (argument_list "(cVar25)" (( "(") (identifier "cVar25") () ")")))) (; ";")) (expression_statement "FUN_00131030(uVar12,uVar11,cVar19);" (call_expression "FUN_00131030(uVar12,uVar11,cVar19)" (identifier "FUN_00131030") (argument_list "(uVar12,uVar11,cVar19)" (( "(") (identifier "uVar12") (, ",") (identifier "uVar11") (, ",") (identifier "cVar19") () ")"))) (; ";")) (} "}")) (else_clause "else {\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }" (else "else") (compound_statement "{\n          if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }\n          bVar15 = 0;\n          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }\n          lVar23 = FUN_00116fb0(cVar19);\n          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);\n          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\nLAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);\n        }" ({ "{") (if_statement "if ((char)bVar15 < '\0') {\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }\n          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }" (if "if") (parenthesized_expression "((char)bVar15 < '\0')" (( "(") (binary_expression "(char)bVar15 < '\0'" (cast_expression "(char)bVar15" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "bVar15")) (< "<") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n            cVar19 = '\b';\n            cVar25 = '\b';\n          }" ({ "{") (expression_statement "cVar19 = '\b';" (assignment_expression "cVar19 = '\b'" (identifier "cVar19") (= "=") (char_literal "'\b'" (' "'") (escape_sequence "\b") (' "'"))) (; ";")) (expression_statement "cVar25 = '\b';" (assignment_expression "cVar25 = '\b'" (identifier "cVar25") (= "=") (char_literal "'\b'" (' "'") (escape_sequence "\b") (' "'"))) (; ";")) (} "}")) (else_clause "else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }" (else "else") (if_statement "if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }\n          else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }" (if "if") (parenthesized_expression "(((bVar15 & 4) == 0) && ((bVar15 & 8) == 0))" (( "(") (binary_expression "((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)" (parenthesized_expression "((bVar15 & 4) == 0)" (( "(") (binary_expression "(bVar15 & 4) == 0" (parenthesized_expression "(bVar15 & 4)" (( "(") (binary_expression "bVar15 & 4" (identifier "bVar15") (& "&") (number_literal "4")) () ")")) (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "((bVar15 & 8) == 0)" (( "(") (binary_expression "(bVar15 & 8) == 0" (parenthesized_expression "(bVar15 & 8)" (( "(") (binary_expression "bVar15 & 8" (identifier "bVar15") (& "&") (number_literal "8")) () ")")) (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n            bVar15 = bVar15 >> 4 & 1;\n            cVar25 = (-(bVar15 == 0) & 2U) + 2;\n            cVar19 = (-(bVar15 == 0) & 2U) + 2;\n          }" ({ "{") (expression_statement "bVar15 = bVar15 >> 4 & 1;" (assignment_expression "bVar15 = bVar15 >> 4 & 1" (identifier "bVar15") (= "=") (binary_expression "bVar15 >> 4 & 1" (binary_expression "bVar15 >> 4" (identifier "bVar15") (>> ">>") (number_literal "4")) (& "&") (number_literal "1"))) (; ";")) (expression_statement "cVar25 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar25 = (-(bVar15 == 0) & 2U) + 2" (identifier "cVar25") (= "=") (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" (( "(") (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" (- "-") (parenthesized_expression "(bVar15 == 0)" (( "(") (binary_expression "bVar15 == 0" (identifier "bVar15") (== "==") (number_literal "0")) () ")"))) (& "&") (number_literal "2U")) () ")")) (+ "+") (number_literal "2"))) (; ";")) (expression_statement "cVar19 = (-(bVar15 == 0) & 2U) + 2;" (assignment_expression "cVar19 = (-(bVar15 == 0) & 2U) + 2" (identifier "cVar19") (= "=") (binary_expression "(-(bVar15 == 0) & 2U) + 2" (parenthesized_expression "(-(bVar15 == 0) & 2U)" (( "(") (binary_expression "-(bVar15 == 0) & 2U" (unary_expression "-(bVar15 == 0)" (- "-") (parenthesized_expression "(bVar15 == 0)" (( "(") (binary_expression "bVar15 == 0" (identifier "bVar15") (== "==") (number_literal "0")) () ")"))) (& "&") (number_literal "2U")) () ")")) (+ "+") (number_literal "2"))) (; ";")) (} "}")) (else_clause "else {\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }" (else "else") (compound_statement "{\n            cVar19 = '\x01';\n            cVar25 = '\x01';\n          }" ({ "{") (expression_statement "cVar19 = '\x01';" (assignment_expression "cVar19 = '\x01'" (identifier "cVar19") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (expression_statement "cVar25 = '\x01';" (assignment_expression "cVar25 = '\x01'" (identifier "cVar25") (= "=") (char_literal "'\x01'" (' "'") (escape_sequence "\x01") (' "'"))) (; ";")) (} "}")))))) (expression_statement "bVar15 = 0;" (assignment_expression "bVar15 = 0" (identifier "bVar15") (= "=") (number_literal "0")) (; ";")) (if_statement "if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }" (if "if") (parenthesized_expression "((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0'))" (( "(") (binary_expression "(((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')" (parenthesized_expression "(((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q'))" (( "(") (binary_expression "((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&\n              (bVar15 = 1, DAT_001e3c20 != 'q')" (parenthesized_expression "((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0)" (( "(") (binary_expression "(*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0" (parenthesized_expression "(*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40)" (( "(") (binary_expression "*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40" (pointer_expression "*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1)" (* "*") (cast_expression "(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)&DAT_001e3c38 + uVar28 * 8 + 1)" (( "(") (binary_expression "(long)&DAT_001e3c38 + uVar28 * 8 + 1" (binary_expression "(long)&DAT_001e3c38 + uVar28 * 8" (cast_expression "(long)&DAT_001e3c38" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (pointer_expression "&DAT_001e3c38" (& "&") (identifier "DAT_001e3c38"))) (+ "+") (binary_expression "uVar28 * 8" (identifier "uVar28") (* "*") (number_literal "8"))) (+ "+") (number_literal "1")) () ")")))) (& "&") (number_literal "0x40")) () ")")) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(bVar15 = 1, DAT_001e3c20 != 'q')" (( "(") (comma_expression "bVar15 = 1, DAT_001e3c20 != 'q'" (assignment_expression "bVar15 = 1" (identifier "bVar15") (= "=") (number_literal "1")) (, ",") (binary_expression "DAT_001e3c20 != 'q'" (identifier "DAT_001e3c20") (!= "!=") (char_literal "'q'" (' "'") (character "q") (' "'")))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(bVar15 = 0, DAT_001e3c20 == '\0')" (( "(") (comma_expression "bVar15 = 0, DAT_001e3c20 == '\0'" (assignment_expression "bVar15 = 0" (identifier "bVar15") (= "=") (number_literal "0")) (, ",") (binary_expression "DAT_001e3c20 == '\0'" (identifier "DAT_001e3c20") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'")))) () ")"))) () ")")) (compound_statement "{\n            bVar15 = DAT_001e3bea >> 3 & 1;\n          }" ({ "{") (expression_statement "bVar15 = DAT_001e3bea >> 3 & 1;" (assignment_expression "bVar15 = DAT_001e3bea >> 3 & 1" (identifier "bVar15") (= "=") (binary_expression "DAT_001e3bea >> 3 & 1" (binary_expression "DAT_001e3bea >> 3" (identifier "DAT_001e3bea") (>> ">>") (number_literal "3")) (& "&") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "lVar23 = FUN_00116fb0(cVar19);" (assignment_expression "lVar23 = FUN_00116fb0(cVar19)" (identifier "lVar23") (= "=") (call_expression "FUN_00116fb0(cVar19)" (identifier "FUN_00116fb0") (argument_list "(cVar19)" (( "(") (identifier "cVar19") () ")")))) (; ";")) (expression_statement "iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);" (assignment_expression "iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28])" (identifier "iVar4") (= "=") (call_expression "FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28])" (identifier "FUN_00134ea0") (argument_list "(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28])" (( "(") (identifier "cVar25") (, ",") (number_literal "0") (, ",") (identifier "bVar15") (, ",") (subscript_expression "(&DAT_001e3c9c)[uVar28]" (parenthesized_expression "(&DAT_001e3c9c)" (( "(") (pointer_expression "&DAT_001e3c9c" (& "&") (identifier "DAT_001e3c9c")) () ")")) ([ "[") (identifier "uVar28") (] "]")) () ")")))) (; ";")) (if_statement "if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }\n          else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }" (if "if") (parenthesized_expression "((iVar4 - 1U < 2) || (iVar4 == 0x184))" (( "(") (binary_expression "(iVar4 - 1U < 2) || (iVar4 == 0x184)" (parenthesized_expression "(iVar4 - 1U < 2)" (( "(") (binary_expression "iVar4 - 1U < 2" (binary_expression "iVar4 - 1U" (identifier "iVar4") (- "-") (number_literal "1U")) (< "<") (number_literal "2")) () ")")) (|| "||") (parenthesized_expression "(iVar4 == 0x184)" (( "(") (binary_expression "iVar4 == 0x184" (identifier "iVar4") (== "==") (number_literal "0x184")) () ")"))) () ")")) (compound_statement "{\n            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }" ({ "{") (expression_statement "plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];" (assignment_expression "plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14]" (identifier "plVar14") (= "=") (cast_expression "(long *)(&DAT_001e3bc0)[uVar28 + 0x14]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "(&DAT_001e3bc0)[uVar28 + 0x14]" (parenthesized_expression "(&DAT_001e3bc0)" (( "(") (pointer_expression "&DAT_001e3bc0" (& "&") (identifier "DAT_001e3bc0")) () ")")) ([ "[") (binary_expression "uVar28 + 0x14" (identifier "uVar28") (+ "+") (number_literal "0x14")) (] "]")))) (; ";")) (if_statement "if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }" (if "if") (parenthesized_expression "((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14))" (( "(") (binary_expression "(DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)" (parenthesized_expression "(DAT_001e3a80 != 0)" (( "(") (binary_expression "DAT_001e3a80 != 0" (identifier "DAT_001e3a80") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(DAT_001e3a80 == *plVar14)" (( "(") (binary_expression "DAT_001e3a80 == *plVar14" (identifier "DAT_001e3a80") (== "==") (pointer_expression "*plVar14" (* "*") (identifier "plVar14"))) () ")"))) () ")")) (compound_statement "{\n              if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }\n              if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }\n            }" ({ "{") (if_statement "if ((char)plVar14[3] == '\x03') {\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }" (if "if") (parenthesized_expression "((char)plVar14[3] == '\x03')" (( "(") (binary_expression "(char)plVar14[3] == '\x03'" (cast_expression "(char)plVar14[3]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "plVar14[3]" (identifier "plVar14") ([ "[") (number_literal "3") (] "]"))) (== "==") (char_literal "'\x03'" (' "'") (escape_sequence "\x03") (' "'"))) () ")")) (compound_statement "{\nLAB_00138a92:\n                lVar16 = DAT_001e4648;\n                lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n                if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }\n                if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }\n                plVar14[2] = plVar14[2] + lVar26 + lVar18;\n                goto LAB_00137fa9;\n              }" ({ "{") (labeled_statement "LAB_00138a92:\n                lVar16 = DAT_001e4648;" (statement_identifier "LAB_00138a92") (: ":") (expression_statement "lVar16 = DAT_001e4648;" (assignment_expression "lVar16 = DAT_001e4648" (identifier "lVar16") (= "=") (identifier "DAT_001e4648")) (; ";"))) (expression_statement "lVar26 = lVar23 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar26 = lVar23 - (DAT_001e4648 + 0x80)" (identifier "lVar26") (= "=") (binary_expression "lVar23 - (DAT_001e4648 + 0x80)" (identifier "lVar23") (- "-") (parenthesized_expression "(DAT_001e4648 + 0x80)" (( "(") (binary_expression "DAT_001e4648 + 0x80" (identifier "DAT_001e4648") (+ "+") (number_literal "0x80")) () ")")))) (; ";")) (if_statement "if (lVar1 == DAT_001e4648) {\n                  lVar18 = -lVar6;\n                }\n                else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }" (if "if") (parenthesized_expression "(lVar1 == DAT_001e4648)" (( "(") (binary_expression "lVar1 == DAT_001e4648" (identifier "lVar1") (== "==") (identifier "DAT_001e4648")) () ")")) (compound_statement "{\n                  lVar18 = -lVar6;\n                }" ({ "{") (expression_statement "lVar18 = -lVar6;" (assignment_expression "lVar18 = -lVar6" (identifier "lVar18") (= "=") (unary_expression "-lVar6" (- "-") (identifier "lVar6"))) (; ";")) (} "}")) (else_clause "else {\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }" (else "else") (compound_statement "{\n                  lVar23 = *(long *)(lVar1 + 0x10);\n                  lVar18 = lVar23 - lVar6;\n                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }\n                }" ({ "{") (expression_statement "lVar23 = *(long *)(lVar1 + 0x10);" (assignment_expression "lVar23 = *(long *)(lVar1 + 0x10)" (identifier "lVar23") (= "=") (pointer_expression "*(long *)(lVar1 + 0x10)" (* "*") (cast_expression "(long *)(lVar1 + 0x10)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar1 + 0x10)" (( "(") (binary_expression "lVar1 + 0x10" (identifier "lVar1") (+ "+") (number_literal "0x10")) () ")"))))) (; ";")) (expression_statement "lVar18 = lVar23 - lVar6;" (assignment_expression "lVar18 = lVar23 - lVar6" (identifier "lVar18") (= "=") (binary_expression "lVar23 - lVar6" (identifier "lVar23") (- "-") (identifier "lVar6"))) (; ";")) (for_statement "for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));\n                      lVar17 = *(long *)(lVar17 + 0x38)) {\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }" (for "for") (( "(") (assignment_expression "lVar17 = *(long *)(lVar1 + 0x38)" (identifier "lVar17") (= "=") (pointer_expression "*(long *)(lVar1 + 0x38)" (* "*") (cast_expression "(long *)(lVar1 + 0x38)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar1 + 0x38)" (( "(") (binary_expression "lVar1 + 0x38" (identifier "lVar1") (+ "+") (number_literal "0x38")) () ")"))))) (; ";") (parenthesized_expression "(lVar17 != 0 && (DAT_001e4648 != lVar17))" (( "(") (binary_expression "lVar17 != 0 && (DAT_001e4648 != lVar17)" (binary_expression "lVar17 != 0" (identifier "lVar17") (!= "!=") (number_literal "0")) (&& "&&") (parenthesized_expression "(DAT_001e4648 != lVar17)" (( "(") (binary_expression "DAT_001e4648 != lVar17" (identifier "DAT_001e4648") (!= "!=") (identifier "lVar17")) () ")"))) () ")")) (; ";") (assignment_expression "lVar17 = *(long *)(lVar17 + 0x38)" (identifier "lVar17") (= "=") (pointer_expression "*(long *)(lVar17 + 0x38)" (* "*") (cast_expression "(long *)(lVar17 + 0x38)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar17 + 0x38)" (( "(") (binary_expression "lVar17 + 0x38" (identifier "lVar17") (+ "+") (number_literal "0x38")) () ")"))))) () ")") (compound_statement "{\n                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);\n                  }" ({ "{") (expression_statement "lVar18 = lVar18 + *(long *)(lVar17 + 0x10);" (assignment_expression "lVar18 = lVar18 + *(long *)(lVar17 + 0x10)" (identifier "lVar18") (= "=") (binary_expression "lVar18 + *(long *)(lVar17 + 0x10)" (identifier "lVar18") (+ "+") (pointer_expression "*(long *)(lVar17 + 0x10)" (* "*") (cast_expression "(long *)(lVar17 + 0x10)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar17 + 0x10)" (( "(") (binary_expression "lVar17 + 0x10" (identifier "lVar17") (+ "+") (number_literal "0x10")) () ")")))))) (; ";")) (} "}"))) (} "}")))) (if_statement "if (DAT_001e3b10 == 0) {\n                  iVar4 = 0x16b;\n                }\n                else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }" (if "if") (parenthesized_expression "(DAT_001e3b10 == 0)" (( "(") (binary_expression "DAT_001e3b10 == 0" (identifier "DAT_001e3b10") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                  iVar4 = 0x16b;\n                }" ({ "{") (expression_statement "iVar4 = 0x16b;" (assignment_expression "iVar4 = 0x16b" (identifier "iVar4") (= "=") (number_literal "0x16b")) (; ";")) (} "}")) (else_clause "else if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }" (else "else") (if_statement "if (cVar25 == '\x04') {\n                  iVar4 = 0x18e;\n                }\n                else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }" (if "if") (parenthesized_expression "(cVar25 == '\x04')" (( "(") (binary_expression "cVar25 == '\x04'" (identifier "cVar25") (== "==") (char_literal "'\x04'" (' "'") (escape_sequence "\x04") (' "'"))) () ")")) (compound_statement "{\n                  iVar4 = 0x18e;\n                }" ({ "{") (expression_statement "iVar4 = 0x18e;" (assignment_expression "iVar4 = 0x18e" (identifier "iVar4") (= "=") (number_literal "0x18e")) (; ";")) (} "}")) (else_clause "else if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }" (else "else") (if_statement "if (cVar25 == '\b') {\n                  iVar4 = 0x191;\n                }" (if "if") (parenthesized_expression "(cVar25 == '\b')" (( "(") (binary_expression "cVar25 == '\b'" (identifier "cVar25") (== "==") (char_literal "'\b'" (' "'") (escape_sequence "\b") (' "'"))) () ")")) (compound_statement "{\n                  iVar4 = 0x191;\n                }" ({ "{") (expression_statement "iVar4 = 0x191;" (assignment_expression "iVar4 = 0x191" (identifier "iVar4") (= "=") (number_literal "0x191")) (; ";")) (} "}"))))))) (expression_statement "plVar14[2] = plVar14[2] + lVar26 + lVar18;" (assignment_expression "plVar14[2] = plVar14[2] + lVar26 + lVar18" (subscript_expression "plVar14[2]" (identifier "plVar14") ([ "[") (number_literal "2") (] "]")) (= "=") (binary_expression "plVar14[2] + lVar26 + lVar18" (binary_expression "plVar14[2] + lVar26" (subscript_expression "plVar14[2]" (identifier "plVar14") ([ "[") (number_literal "2") (] "]")) (+ "+") (identifier "lVar26")) (+ "+") (identifier "lVar18"))) (; ";")) (goto_statement "goto LAB_00137fa9;" (goto "goto") (statement_identifier "LAB_00137fa9") (; ";")) (} "}"))) (if_statement "if ((char)plVar14[3] == '\x13') {\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }" (if "if") (parenthesized_expression "((char)plVar14[3] == '\x13')" (( "(") (binary_expression "(char)plVar14[3] == '\x13'" (cast_expression "(char)plVar14[3]" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (subscript_expression "plVar14[3]" (identifier "plVar14") ([ "[") (number_literal "3") (] "]"))) (== "==") (char_literal "'\x13'" (' "'") (escape_sequence "\x13") (' "'"))) () ")")) (compound_statement "{\n                lVar16 = FUN_0012bc00(plVar14[1]);\n                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];\n                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;\n              }" ({ "{") (expression_statement "lVar16 = FUN_0012bc00(plVar14[1]);" (assignment_expression "lVar16 = FUN_0012bc00(plVar14[1])" (identifier "lVar16") (= "=") (call_expression "FUN_0012bc00(plVar14[1])" (identifier "FUN_0012bc00") (argument_list "(plVar14[1])" (( "(") (subscript_expression "plVar14[1]" (identifier "plVar14") ([ "[") (number_literal "1") (] "]")) () ")")))) (; ";")) (expression_statement "plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];" (assignment_expression "plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14]" (identifier "plVar14") (= "=") (cast_expression "(long *)(&DAT_001e3bc0)[uVar28 + 0x14]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "(&DAT_001e3bc0)[uVar28 + 0x14]" (parenthesized_expression "(&DAT_001e3bc0)" (( "(") (pointer_expression "&DAT_001e3bc0" (& "&") (identifier "DAT_001e3bc0")) () ")")) ([ "[") (binary_expression "uVar28 + 0x14" (identifier "uVar28") (+ "+") (number_literal "0x14")) (] "]")))) (; ";")) (if_statement "if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;" (if "if") (parenthesized_expression "(*(char *)(lVar16 + 0x18) == '\x14')" (( "(") (binary_expression "*(char *)(lVar16 + 0x18) == '\x14'" (pointer_expression "*(char *)(lVar16 + 0x18)" (* "*") (cast_expression "(char *)(lVar16 + 0x18)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar16 + 0x18)" (( "(") (binary_expression "lVar16 + 0x18" (identifier "lVar16") (+ "+") (number_literal "0x18")) () ")")))) (== "==") (char_literal "'\x14'" (' "'") (escape_sequence "\x14") (' "'"))) () ")")) (goto_statement "goto LAB_00138a92;" (goto "goto") (statement_identifier "LAB_00138a92") (; ";"))) (} "}"))) (} "}"))) (expression_statement "lVar26 = lVar23 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar26 = lVar23 - (DAT_001e4648 + 0x80)" (identifier "lVar26") (= "=") (binary_expression "lVar23 - (DAT_001e4648 + 0x80)" (identifier "lVar23") (- "-") (parenthesized_expression "(DAT_001e4648 + 0x80)" (( "(") (binary_expression "DAT_001e4648 + 0x80" (identifier "DAT_001e4648") (+ "+") (number_literal "0x80")) () ")")))) (; ";")) (expression_statement "lVar16 = DAT_001e4648;" (assignment_expression "lVar16 = DAT_001e4648" (identifier "lVar16") (= "=") (identifier "DAT_001e4648")) (; ";")) (} "}")) (else_clause "else {\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }" (else "else") (compound_statement "{\n            plVar14 = (&DAT_001e3c60)[uVar28];\n            lVar26 = lVar23 - (DAT_001e4648 + 0x80);\n            lVar16 = DAT_001e4648;\n          }" ({ "{") (expression_statement "plVar14 = (&DAT_001e3c60)[uVar28];" (assignment_expression "plVar14 = (&DAT_001e3c60)[uVar28]" (identifier "plVar14") (= "=") (subscript_expression "(&DAT_001e3c60)[uVar28]" (parenthesized_expression "(&DAT_001e3c60)" (( "(") (pointer_expression "&DAT_001e3c60" (& "&") (identifier "DAT_001e3c60")) () ")")) ([ "[") (identifier "uVar28") (] "]"))) (; ";")) (expression_statement "lVar26 = lVar23 - (DAT_001e4648 + 0x80);" (assignment_expression "lVar26 = lVar23 - (DAT_001e4648 + 0x80)" (identifier "lVar26") (= "=") (binary_expression "lVar23 - (DAT_001e4648 + 0x80)" (identifier "lVar23") (- "-") (parenthesized_expression "(DAT_001e4648 + 0x80)" (( "(") (binary_expression "DAT_001e4648 + 0x80" (identifier "DAT_001e4648") (+ "+") (number_literal "0x80")) () ")")))) (; ";")) (expression_statement "lVar16 = DAT_001e4648;" (assignment_expression "lVar16 = DAT_001e4648" (identifier "lVar16") (= "=") (identifier "DAT_001e4648")) (; ";")) (} "}")))) (labeled_statement "LAB_00137fa9:\n          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);" (statement_identifier "LAB_00137fa9") (: ":") (expression_statement "FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);" (call_expression "FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23)" (identifier "FUN_0012ee00") (argument_list "(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23)" (( "(") (identifier "lVar16") (, ",") (identifier "lVar26") (, ",") (identifier "cVar25") (, ",") (identifier "plVar14") (, ",") (number_literal "0") (, ",") (identifier "iVar4") (, ",") (identifier "lVar23") () ")"))) (; ";"))) (} "}")))) (} "}"))) (expression_statement "uVar21 = (int)uVar28 + 1;" (assignment_expression "uVar21 = (int)uVar28 + 1" (identifier "uVar21") (= "=") (binary_expression "(int)uVar28 + 1" (cast_expression "(int)uVar28" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar28")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar28 = (ulong)uVar21;" (assignment_expression "uVar28 = (ulong)uVar21" (identifier "uVar28") (= "=") (cast_expression "(ulong)uVar21" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar21"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(uVar21 < DAT_001e3c24)" (( "(") (binary_expression "uVar21 < DAT_001e3c24" (identifier "uVar21") (< "<") (identifier "DAT_001e3c24")) () ")")) (; ";")) (} "}"))) (return_statement "return;" (return "return") (; ";")) (} "}")))

/* WARNING: Unknown calling convention -- yet parameter storage is locked */
/* WARNING: Enum "anon_enum_32": Some values do not have unique names */

void function_1(void)

{
  type_1 *var_59;
  type_2 var_23;
  type_3 *var_63;
  type_4 *var_56;
  type_5 var_16;
  type_6 var_27;
  type_7 var_49;
  type_8 var_58;
  char *var_22;
  type_9 *symbol;
  char *pcVar9;
  type_10 *pfVar10;
  type_11 var_46;
  type_12 vVar12;
  type_5 *var_34;
  type_13 *peVar14;
  type_13 *peVar15;
  type_14 var_43;
  type_14 var_44;
  long var_60;
  type_15 var_17;
  long var_37;
  type_5 *var_15;
  type_15 var_13;
  int var_30;
  char var_47;
  size_t sVar25;
  type_4 *pfVar26;
  type_16 offset;
  type_15 var_7;
  type_15 var_6;
  type_11 var_31;
  bool var_20;
  type_15 local_58;
  
  var_1(0);
  var_56 = var_57;
  var_58 = var_2();
  var_23 = i.var_26[0];
  if ((i.tm.opcode_modifier._0_1_ & 0x20) != 0) {
    var_17 = (type_15)(i.disp_encoding == var_3) * 2;
    if (i.prefix[3] != '\0') {
      var_6 = 2;
      i.prefixes = i.prefixes - 1;
      var_20 = var_4 != var_5;
    }
    else {
      var_20 = var_4 == var_5;
      var_6 = 1;
    }
    var_7 = var_6;
    var_13 = (type_15)(i.prefix[3] != '\0');
    if ((i.prefix[1] & 0xef) == 0x2e) {
      i.prefixes = i.prefixes - 1;
      var_7 = var_6 + 1;
      var_13 = var_6;
    }
    var_6 = var_7;
    if (i.prefix[6] != '\0') {
      i.prefixes = i.prefixes - 1;
      var_6 = var_7 + 1;
      var_13 = var_7;
    }
    if (i.prefix[4] != '\0') {
      var_8((type_15)i.prefix[4]);
      i.prefixes = i.prefixes - 1;
    }
    if ((i.prefixes != 0) && (var_9 == 0)) {
      pcVar9 = (char *)var_10(0,"skipping prefixes on this instruction",5);
      var_11(pcVar9);
    }
    var_12((long)(int)(var_13 + 6));
    var_15 = (type_5 *)var_14((long)(int)var_6);
    if (i.prefix[3] != '\0') {
      *var_15 = 'f';
      var_15 = var_15 + 1;
    }
    if ((i.prefix[1] & 0xef) == 0x2e) {
      *var_15 = i.prefix[1];
      var_15 = var_15 + 1;
    }
    if (i.prefix[6] != '\0') {
      *var_15 = i.prefix[6];
      var_15 = var_15 + 1;
    }
    var_16 = (type_5)i.tm.base_opcode;
    *var_15 = var_16;
    var_6 = var_17;
    if (var_16 != 0xeb) {
      var_6 = var_17 | 8;
      if ((cpu_arch_flags.array[0]._0_1_ & 4) != 0) {
        var_6 = var_17 | 4;
      }
    }
    if ((type_14)((i.op[0].disps)->field_0x18 - 2) < 2) {
      symbol = (i.op[0].disps)->X_add_symbol;
      offset = (i.op[0].disps)->X_add_number;
    }
    else {
      symbol = var_18(i.op[0].disps);
      offset = 0;
    }
    var_19(rs_machine_dependent,5,(type_11)i.var_26[0],var_6 | var_20,symbol,offset,(char *)var_15)
    ;
    return;
  }
  if ((i.tm.opcode_modifier._0_1_ & 0xc0) != 0) {
    if ((char)i.tm.opcode_modifier._0_1_ < '\0') {
      if (i.prefix[2] != '\0') {
        var_8(0x67);
        i.prefixes = i.prefixes - 1;
      }
      var_17 = 1;
      if ((i.prefix[1] & 0xef) == 0x2e) {
        var_8((type_15)i.prefix[1]);
        i.prefixes = i.prefixes - 1;
      }
    }
    else {
      if (var_4 == var_5) {
        if (i.prefix[3] == '\0') {
          var_17 = 2;
          goto LAB_00137acf;
        }
        var_8(0x66);
        i.prefixes = i.prefixes - 1;
      }
      else if (i.prefix[3] != '\0') {
        var_17 = 2;
        var_8(0x66);
        i.prefixes = i.prefixes - 1;
        goto LAB_00137acf;
      }
      var_17 = 4;
    }
LAB_00137acf:
    if (i.prefix[6] != '\0') {
      var_8((type_15)i.prefix[6]);
      i.prefixes = i.prefixes - 1;
    }
    if (i.prefix[4] != '\0') {
      var_8((type_15)i.prefix[4]);
      i.prefixes = i.prefixes - 1;
    }
    if ((i.prefixes != 0) && (var_9 == 0)) {
      pcVar9 = (char *)var_10(0,"skipping prefixes on this instruction",5);
      var_11(pcVar9);
    }
    var_22 = var_14((long)(int)(i.tm.opcode_length + var_17));
    pcVar9 = var_22;
    if (i.tm.opcode_length != '\x01') {
      if (i.tm.opcode_length != '\x02') {
                    /* WARNING: Subroutine does not return */
        var_21("../../gas/config/tc-i386.c",0x1d62,"output_jump");
      }
      pcVar9 = var_22 + 1;
      *var_22 = (char)(i.tm.base_opcode >> 8);
    }
    var_30 = (int)pcVar9 + 1;
    *pcVar9 = (char)i.tm.base_opcode;
    if ((var_17 == 4) && (var_23 == var_24)) {
      var_27 = var_25((i.op[0].disps)->X_add_symbol);
      var_49 = var_26(4,1,1,(-(type_15)(var_27 == 0) & 0xfffffec9) + var_28);
      var_29(var_57,var_30 - ((int)var_57 + 0x80),4,i.op[0].disps,1,var_49);
      return;
    }
    var_49 = var_26(var_17,1,1,var_23);
    pfVar10 = var_29(var_57,var_30 - ((int)var_57 + 0x80),var_17,i.op[0].disps,1,var_49);
    if (var_17 != 1) {
      return;
    }
    *(type_14 *)pfVar10 = *(type_14 *)pfVar10 | 0x80;
    return;
  }
  if ((i.tm.opcode_modifier._1_1_ & 1) != 0) {
    if (i.prefix[3] != '\0') {
      i.prefixes = i.prefixes - 1;
      var_20 = var_4 != var_5;
    }
    else {
      var_20 = var_4 == var_5;
    }
    var_17 = (type_15)(i.prefix[3] != '\0');
    if (i.prefix[6] != '\0') {
      i.prefixes = i.prefixes - 1;
      var_17 = var_17 + 1;
    }
    var_6 = (-(type_15)!var_20 & 2) + 2;
    if ((i.prefixes != 0) && (var_9 == 0)) {
      pcVar9 = (char *)var_10(0,"skipping prefixes on this instruction",5);
      var_11(pcVar9);
    }
    var_15 = (type_5 *)var_14((long)(int)(var_17 + 3 + var_6));
    if (i.prefix[3] != '\0') {
      *var_15 = 'f';
      var_15 = var_15 + 1;
    }
    var_34 = var_15 + 1;
    if (i.prefix[6] != '\0') {
      *var_15 = i.prefix[6];
      var_34 = var_15 + 2;
      var_15 = var_15 + 1;
    }
    *var_15 = (type_5)i.tm.base_opcode;
    if ((i.op[1].disps)->field_0x18 == '\x02') {
      var_31 = (i.op[1].disps)->X_add_number;
      if (((var_6 == 2) && (0xffff < var_31)) && (0xffff < var_31 + 0x8000)) {
        pcVar9 = (char *)var_10(0,"16-bit jump out of range",5);
        var_32(pcVar9);
        return;
      }
      var_33((char *)var_34,var_31,var_6);
    }
    else {
      var_49 = var_26(var_6,0,0,i.var_26[1]);
      var_29(var_57,(int)var_34 - ((int)var_57 + 0x80),var_6,i.op[1].disps,0,var_49);
    }
    pcVar9 = i.tm.name;
    if ((i.op[0].disps)->field_0x18 != '\x02') {
      var_22 = (char *)var_10(0,"can\'t handle non absolute segment in `%s\'",5);
      var_32(var_22,pcVar9);
    }
    vVar12 = (i.op[0].disps)->X_add_number;
    var_30 = 2;
    var_34 = var_34 + (int)var_6;
LAB_0013817e:
    var_33((char *)var_34,vVar12,var_30);
    return;
  }
  if ((var_35 == 0) || (i.tm.base_opcode != 0xfae)) {
    if (var_36 != 0) {
      if (i.tm.base_opcode == 0xf0) {
        return;
      }
LAB_00137bee:
      i.prefix[5] = '\0';
    }
  }
  else {
    if (((i.operands == 1) && (i.imm_operands == 1)) &&
       ((((i.op[0].disps)->X_add_number & 0xffffffffffffffefU) == 0xe8 ||
        ((i.op[0].disps)->X_add_number == 0xf0)))) {
      var_34 = (type_5 *)var_14(5);
      var_30 = 5;
      vVar12 = 0x240483f0;
      goto LAB_0013817e;
    }
    if (var_36 != 0) goto LAB_00137bee;
  }
  if ((i.tm.opcode_modifier._4_4_ & 0x7000600) != 0) {
    var_37 = 0;
    do {
      if (i.prefix[var_37] != 0) {
        var_17 = (type_15)var_37;
        if (var_17 == 0) {
LAB_00137a7e:
                    /* WARNING: Subroutine does not return */
          var_21("../../gas/config/tc-i386.c",0x1e38,"output_insn");
        }
        if (var_17 < 3) {
          var_8((type_15)i.prefix[var_37]);
        }
        else if (var_17 != 6) goto LAB_00137a7e;
      }
      var_37 = var_37 + 1;
    } while (var_37 != 7);
    if (i.vrex != 0) {
                    /* WARNING: Subroutine does not return */
      var_21("../../gas/config/tc-i386.c",0x1e3f,"output_insn");
    }
    pcVar9 = var_14((type_11)i.vex.length);
    if (i.vex.length != 0) {
      var_37 = 0;
      do {
        pcVar9[var_37] = i.vex.bytes[var_37];
        var_37 = var_37 + 1;
      } while ((type_15)var_37 < i.vex.length);
    }
    goto LAB_00137e10;
  }
  if (i.tm.opcode_length != '\x01') {
    if (i.tm.opcode_length == '\0') {
      pcVar9 = (char *)var_10(0,"pseudo prefix without instruction",5);
      var_38(var_56->fr_file,var_56->fr_line,pcVar9);
      return;
    }
    if (i.tm.opcode_length == '\x02') {
      if ((i.tm.base_opcode & 0xff0000) != 0) {
        var_17 = i.tm.base_opcode >> 0x10 & 0xff;
        if ((i.tm.cpu_flags.array[0]._2_1_ & 0x10) != 0) goto LAB_00137dbf;
LAB_00137dd0:
        var_39(var_17);
      }
    }
    else {
      if (i.tm.opcode_length != '\x03') {
                    /* WARNING: Subroutine does not return */
        var_21("../../gas/config/tc-i386.c",0x1e15,"output_insn");
      }
      if ((i.tm.base_opcode & 0xff000000) != 0) {
        var_17 = i.tm.base_opcode >> 0x18;
LAB_00137dbf:
        if ((var_17 != 0xf3) || (i.prefix[4] != 0xf3)) goto LAB_00137dd0;
      }
    }
  }
  if ((((var_40 == var_41) && (i.operands == 2)) &&
      (i.var_26[0] == var_42)) && (i.prefix[6] == '\0')) {
    var_39(0x40);
  }
  var_15 = i.prefix;
  do {
    while (*var_15 == 0) {
      var_15 = var_15 + 1;
      if (var_15 == &i.field_0x12b) goto LAB_00137e10;
    }
    var_8((type_15)*var_15);
    var_15 = var_15 + 1;
  } while (var_15 != &i.field_0x12b);
LAB_00137e10:
  if (i.tm.opcode_length == '\x01') {
    var_8(i.tm.base_opcode);
  }
  else {
    if (i.tm.opcode_length == '\x03') {
      var_22 = var_14(3);
      pcVar9 = var_22 + 1;
      *var_22 = (char)(i.tm.base_opcode >> 0x10);
    }
    else if (i.tm.opcode_length == '\x04') {
      var_22 = var_14(4);
      *var_22 = (char)(i.tm.base_opcode >> 0x18);
      pcVar9 = var_22 + 2;
      var_22[1] = (char)(i.tm.base_opcode >> 0x10);
    }
    else {
      if (i.tm.opcode_length != '\x02') {
                    /* WARNING: Subroutine does not return */
        var_21("../../gas/config/tc-i386.c",0x1e5c,"output_insn");
      }
      pcVar9 = var_14(2);
    }
    *pcVar9 = (char)(i.tm.base_opcode >> 8);
    pcVar9[1] = (char)i.tm.base_opcode;
  }
  if ((((i.tm.opcode_modifier._0_1_ & 8) != 0) &&
      (var_8(i.rm.reg * 8 | i.rm.mode << 6 | i.rm.regmem), i.rm.regmem == 4)) &&
     ((i.rm.mode != 3 &&
      ((i.base_reg == (type_3 *)0x0 || (((type_11)(i.base_reg)->reg_type & 0x40000000) == 0)))))) {
    var_8(i.sib.index * 8 | i.sib.scale << 6 | i.sib.base);
  }
  if (i.disp_operands != 0) {
    if (i.operands == 0) {
      return;
    }
    var_31 = 0;
    var_17 = i.operands;
    do {
      var_6 = i.operands;
      if ((*(type_14 *)((long)i.types + var_31 * 8 + 2) & 0x1f) != 0) {
        peVar15 = i.op[var_31].disps;
        var_43 = *(type_14 *)((long)i.types + (var_31 & 0xffffffff) * 8 + 2);
        var_44 = var_43 >> 4 & 1;
        if (peVar15->field_0x18 == '\x02') {
          var_37 = peVar15->X_add_number;
          if (var_44 == 0) {
            if ((var_43 & 1) == 0) {
              var_43 = var_43 >> 1 & 1;
              sVar25 = (type_11)(-(type_15)(var_43 == 0) & 2) + 2;
              var_30 = (-(type_15)(var_43 == 0) & 2) + 2;
            }
            else {
              sVar25 = 1;
              var_30 = 1;
              var_37 = var_37 >> ((type_14)i.memshift & 0x3f);
            }
          }
          else {
            sVar25 = 8;
            var_30 = 8;
          }
          vVar12 = var_45(var_37,var_30);
          pcVar9 = var_14(sVar25);
          var_33(pcVar9,vVar12,var_30);
          var_6 = i.operands;
        }
        else {
          if (var_44 == 0) {
            if ((var_43 & 1) != 0) {
LAB_00138302:
                    /* WARNING: Subroutine does not return */
              var_21("../../gas/config/tc-i386.c",0x1ec2,"output_disp");
            }
            var_44 = var_43 >> 1;
            var_43 = *(type_14 *)((long)i.types + (var_31 & 0xffffffff) * 8 + 2);
            var_7 = (-(type_15)((var_44 & 1) == 0) & 2) + 2;
            var_6 = i.flags[var_31];
          }
          else {
            var_6 = i.flags[var_31];
            if ((var_43 & 1) != 0) goto LAB_00138302;
            var_7 = 8;
          }
          local_58 = var_43 >> 3 & 1;
          var_6 = var_6 & 1;
          if ((var_6 != 0) && (i.imm_operands != 0)) {
            var_46 = 0;
            var_47 = '\0';
            do {
              if ((*(type_14 *)((long)i.types + var_46 * 8 + 1) & 0xfc) != 0) {
                if (var_47 != '\0') {
                    /* WARNING: Subroutine does not return */
                  var_21("../../gas/config/tc-i386.c",0x1ed1,"output_disp");
                }
                var_43 = *(type_14 *)((long)i.types + (var_46 & 0xffffffff) * 8 + 1);
                if ((char)var_43 < '\0') {
                  var_37 = 8;
                  var_47 = '\b';
                }
                else if (((var_43 & 4) == 0) && ((var_43 & 8) == 0)) {
                  var_43 = var_43 >> 4 & 1;
                  var_37 = (type_11)(-(type_15)(var_43 == 0) & 2) + 2;
                  var_47 = (-(var_43 == 0) & 2U) + 2;
                }
                else {
                  var_37 = 1;
                  var_47 = '\x01';
                }
                peVar15->X_add_number = peVar15->X_add_number - var_37;
              }
              var_46 = var_46 + 1;
            } while ((type_15)var_46 < var_17);
            if (var_47 == '\0') {
                    /* WARNING: Subroutine does not return */
              var_21("../../gas/config/tc-i386.c",0x1ed6,"output_disp");
            }
          }
          pcVar9 = var_14((long)(int)var_7);
          var_49 = var_26(var_7,var_6,local_58,i.var_26[var_31]);
          pfVar26 = var_57;
          if (var_48 == (type_9 *)0x0) {
            peVar15 = i.op[var_31].disps;
            var_37 = (long)pcVar9 - (long)var_57->fr_literal;
          }
          else {
            peVar15 = i.op[var_31].disps;
            if (var_48 == peVar15->X_add_symbol) {
              if ((var_49 == var_50) || (var_49 == var_51)) {
LAB_001386f0:
                if (peVar15->field_0x18 != '\x03') {
                  if (peVar15->field_0x18 == '\x13') {
                    peVar14 = var_52(peVar15->X_op_symbol);
                    peVar15 = i.op[var_31].disps;
                    if (peVar14->field_0x18 == '\x14') goto LAB_00138730;
                  }
                  goto LAB_001385b1;
                }
LAB_00138730:
                var_37 = (long)pcVar9 - (long)var_57->fr_literal;
              }
              else {
                if (var_49 == var_53) {
                  if (var_54 == 0) goto LAB_001383be;
                  goto LAB_001386f0;
                }
LAB_001385b1:
                var_37 = (long)pcVar9 - (long)var_57->fr_literal;
                pfVar26 = var_57;
                if (var_49 != var_55) goto LAB_001383d2;
              }
              pfVar26 = var_57;
              if (var_56 == var_57) {
                var_60 = -var_58;
              }
              else {
                var_60 = var_56->fr_fix - var_58;
                for (var_59 = var_56->fr_next; (var_59 != (type_1 *)0x0 && (var_59 != var_57));
                    var_59 = var_59->fr_next) {
                  var_60 = var_60 + var_59->fr_fix;
                }
              }
              if (var_54 == 0) {
                peVar15->X_add_number = peVar15->X_add_number + var_37 + var_60;
                var_49 = BFD_RELOC_386_GOTPC;
              }
              else {
                var_49 = (type_15)(var_49 == var_53) * 3 + var_61;
              }
            }
            else {
LAB_001383be:
              var_37 = (long)pcVar9 - (long)var_57->fr_literal;
            }
          }
LAB_001383d2:
          pfVar10 = var_29(pfVar26,(int)var_37,var_7,peVar15,var_6,var_49);
          var_63 = i.base_reg;
          var_6 = i.operands;
          if (i.prefix[3] == '\0') {
            if (var_62 == 0) {
              if (i.rm.mode == 0 && var_54 == 0) {
LAB_00138410:
                if (i.rm.regmem == 5) goto LAB_0013841d;
              }
            }
            else if (i.rm.mode == 2) {
LAB_0013841d:
              if (i.operands == 1) {
                if ((i.tm.base_opcode != 0xff) || ((i.rm.reg - 2 & 0xfffffffd) != 0)) {
                  if (i.imm_operands == 0) {
                    return;
                  }
                  goto LAB_00137e9a;
                }
              }
              else if ((i.operands != 2) ||
                      (((i.tm.base_opcode != 0x8b && (i.tm.base_opcode != 0x85)) &&
                       ((i.tm.base_opcode & 199) != 3)))) goto LAB_00138326;
              if (var_54 == 0) {
                *(type_14 *)pfVar10 = *(type_14 *)pfVar10 | 0x10;
              }
              else {
                var_43 = *(type_14 *)pfVar10 & 0xf7 | (i.rex != 0) * '\b';
                *(type_14 *)pfVar10 = var_43;
                if ((var_63 != (type_3 *)0x0) && (0xfd < var_63->reg_num)) {
                  *(type_14 *)pfVar10 = var_43 | 0x10;
                }
              }
            }
            else if (i.rm.mode == 0) goto LAB_00138410;
          }
        }
      }
LAB_00138326:
      var_17 = var_6;
      var_31 = var_31 + 1;
    } while ((type_15)var_31 < var_17);
  }
  if ((i.imm_operands != 0) && (i.operands != 0)) {
LAB_00137e9a:
    var_31 = 0;
    do {
      if (((i.rounding == (type_17 *)0x0) || ((i.rounding)->operand != (int)var_31)) &&
         ((*(type_14 *)((long)i.types + var_31 * 8 + 1) & 0xfc) != 0)) {
        var_43 = *(type_14 *)((long)i.types + var_31 * 8 + 1);
        if ((i.op[var_31].disps)->field_0x18 == '\x02') {
          if ((char)var_43 < '\0') {
            sVar25 = 8;
            var_30 = 8;
          }
          else if (((var_43 & 4) == 0) && ((var_43 & 8) == 0)) {
            var_43 = var_43 >> 4 & 1;
            sVar25 = (type_11)(-(type_15)(var_43 == 0) & 2) + 2;
            var_30 = (-(type_15)(var_43 == 0) & 2) + 2;
          }
          else {
            sVar25 = 1;
            var_30 = 1;
          }
          vVar12 = var_45((i.op[var_31].disps)->X_add_number,var_30);
          pcVar9 = var_14(sVar25);
          var_33(pcVar9,vVar12,var_30);
        }
        else {
          if ((char)var_43 < '\0') {
            var_17 = 8;
            sVar25 = 8;
          }
          else if (((var_43 & 4) == 0) && ((var_43 & 8) == 0)) {
            var_43 = var_43 >> 4 & 1;
            var_17 = (-(type_15)(var_43 == 0) & 2) + 2;
            sVar25 = (type_11)(-(type_15)(var_43 == 0) & 2) + 2;
          }
          else {
            var_17 = 1;
            sVar25 = 1;
          }
          var_6 = 0;
          if ((((*(type_14 *)((long)i.types + var_31 * 8 + 1) & 0x40) != 0) &&
              (var_6 = 1, i.suffix != 'q')) && (var_6 = 0, i.suffix == '\0')) {
            var_6 = (type_14)i.tm.opcode_modifier._2_1_ >> 3 & 1;
          }
          pcVar9 = var_14(sVar25);
          var_49 = var_26(var_17,0,var_6,i.var_26[var_31]);
          if ((var_49 - var_53 < 2) || (var_49 == var_51)) {
            peVar15 = i.op[var_31].disps;
            if ((var_48 != (type_9 *)0x0) && (var_48 == peVar15->X_add_symbol)) {
              if (peVar15->field_0x18 == '\x03') {
LAB_00138a92:
                pfVar26 = var_57;
                var_37 = (long)pcVar9 - (long)var_57->fr_literal;
                if (var_56 == var_57) {
                  var_60 = -var_58;
                }
                else {
                  var_60 = var_56->fr_fix - var_58;
                  for (var_59 = var_56->fr_next; (var_59 != (type_1 *)0x0 && (var_57 != var_59));
                      var_59 = var_59->fr_next) {
                    var_60 = var_60 + var_59->fr_fix;
                  }
                }
                if (var_54 == 0) {
                  var_49 = BFD_RELOC_386_GOTPC;
                }
                else if (var_17 == 4) {
                  var_49 = var_61;
                }
                else if (var_17 == 8) {
                  var_49 = BFD_RELOC_X86_64_GOTPC64;
                }
                peVar15->X_add_number = peVar15->X_add_number + var_37 + var_60;
                goto LAB_00137fa9;
              }
              if (peVar15->field_0x18 == '\x13') {
                peVar14 = var_52(peVar15->X_op_symbol);
                peVar15 = i.op[var_31].disps;
                if (peVar14->field_0x18 == '\x14') goto LAB_00138a92;
              }
            }
            var_37 = (long)pcVar9 - (long)var_57->fr_literal;
            pfVar26 = var_57;
          }
          else {
            peVar15 = i.op[var_31].disps;
            var_37 = (long)pcVar9 - (long)var_57->fr_literal;
            pfVar26 = var_57;
          }
LAB_00137fa9:
          var_29(pfVar26,(int)var_37,var_17,peVar15,0,var_49);
        }
      }
      var_17 = (int)var_31 + 1;
      var_31 = (type_11)var_17;
    } while (var_17 < i.operands);
  }
  return;
}


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

/* WARNING: Globals starting with '_' overlap smaller symbols at the same address */

void MASKED(void)

{
  long lVar1;
  byte bVar2;
  byte bVar3;
  int iVar4;
  undefined4 uVar5;
  long lVar6;
  undefined1 *puVar7;
  byte *pbVar8;
  ulong uVar9;
  undefined1 *puVar10;
  undefined8 uVar11;
  undefined8 uVar12;
  byte *pbVar13;
  long *plVar14;
  byte bVar15;
  long lVar16;
  long lVar17;
  long lVar18;
  char cVar19;
  int iVar20;
  uint uVar21;
  uint uVar22;
  long lVar23;
  char *pcVar24;
  char cVar25;
  long lVar26;
  char cVar27;
  ulong uVar28;
  bool bVar29;
  ulong uVar30;
  
  FUN_0010e9f0(0);
  lVar1 = DAT_001e4648;
  lVar6 = FUN_001171d0();
  iVar4 = DAT_001e3c9c;
  if ((DAT_001e3be8 & 0x20) != 0) {
    bVar15 = (DAT_001e3d40 == 2) * '\x02';
    if (DAT_001e3ce7 != '\0') {
      cVar19 = '\x02';
      DAT_001e3ce0 = DAT_001e3ce0 + -1;
      bVar29 = DAT_001e3b14 != 1;
    }
    else {
      bVar29 = DAT_001e3b14 == 1;
      cVar19 = '\x01';
    }
    cVar25 = DAT_001e3ce7 != '\0';
    cVar27 = cVar19;
    if ((DAT_001e3ce5 & 0xef) == 0x2e) {
      DAT_001e3ce0 = DAT_001e3ce0 + -1;
      cVar27 = cVar19 + '\x01';
      cVar25 = cVar19;
    }
    cVar19 = cVar27;
    if (DAT_001e3cea != 0) {
      DAT_001e3ce0 = DAT_001e3ce0 + -1;
      cVar19 = cVar27 + '\x01';
      cVar25 = cVar27;
    }
    if (DAT_001e3ce8 != '\0') {
      FUN_00117220();
      DAT_001e3ce0 = DAT_001e3ce0 + -1;
    }
    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {
      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);
      FUN_0011d8a0(uVar11);
    }
    FUN_00116e70(cVar25 + '\x06');
    pbVar8 = (byte *)FUN_00116fb0(cVar19);
    if (DAT_001e3ce7 != '\0') {
      *pbVar8 = 0x66;
      pbVar8 = pbVar8 + 1;
    }
    if ((DAT_001e3ce5 & 0xef) == 0x2e) {
      *pbVar8 = DAT_001e3ce5;
      pbVar8 = pbVar8 + 1;
    }
    if (DAT_001e3cea != 0) {
      *pbVar8 = DAT_001e3cea;
      pbVar8 = pbVar8 + 1;
    }
    bVar2 = (byte)DAT_001e3bcc;
    *pbVar8 = bVar2;
    bVar3 = bVar15;
    if (bVar2 != 0xeb) {
      bVar3 = bVar15 | 8;
      if (((byte)DAT_001da770 & 4) != 0) {
        bVar3 = bVar15 | 4;
      }
    }
    if ((byte)(*(char *)(DAT_001e3c60 + 3) - 2U) < 2) {
      uVar11 = *DAT_001e3c60;
      uVar12 = DAT_001e3c60[2];
    }
    else {
      uVar11 = FUN_00113ee0();
      uVar12 = 0;
    }
    FUN_00116fe0(7,5,DAT_001e3c9c,bVar3 | bVar29,uVar11,uVar12,pbVar8);
    return;
  }
  if ((DAT_001e3be8 & 0xc0) != 0) {
    if ((char)DAT_001e3be8 < '\0') {
      if (DAT_001e3ce6 != '\0') {
        FUN_00117220(0x67);
        DAT_001e3ce0 = DAT_001e3ce0 + -1;
      }
      iVar20 = 1;
      if ((DAT_001e3ce5 & 0xef) == 0x2e) {
        FUN_00117220();
        DAT_001e3ce0 = DAT_001e3ce0 + -1;
      }
    }
    else {
      if (DAT_001e3b14 == 1) {
        if (DAT_001e3ce7 == '\0') {
          iVar20 = 2;
          goto LAB_00137acf;
        }
        FUN_00117220(0x66);
        DAT_001e3ce0 = DAT_001e3ce0 + -1;
      }
      else if (DAT_001e3ce7 != '\0') {
        iVar20 = 2;
        FUN_00117220(0x66);
        DAT_001e3ce0 = DAT_001e3ce0 + -1;
        goto LAB_00137acf;
      }
      iVar20 = 4;
    }
LAB_00137acf:
    if (DAT_001e3cea != 0) {
      FUN_00117220();
      DAT_001e3ce0 = DAT_001e3ce0 + -1;
    }
    if (DAT_001e3ce8 != '\0') {
      FUN_00117220();
      DAT_001e3ce0 = DAT_001e3ce0 + -1;
    }
    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {
      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);
      FUN_0011d8a0(uVar11);
    }
    puVar7 = (undefined1 *)FUN_00116fb0((uint)DAT_001e3bd4 + iVar20);
    puVar10 = puVar7;
    if (DAT_001e3bd4 != 1) {
      if (DAT_001e3bd4 != 2) {
                    /* WARNING: Subroutine does not return */
        FUN_0011dd00("../../gas/config/tc-i386.c",0x1d62,"output_jump");
      }
      puVar10 = puVar7 + 1;
      *puVar7 = (char)(DAT_001e3bcc >> 8);
    }
    *puVar10 = (char)DAT_001e3bcc;
    if ((iVar20 == 4) && (iVar4 == 0x47)) {
      iVar4 = FUN_00136e70(*DAT_001e3c60);
      uVar5 = FUN_00134ea0(4,1,1,(-(uint)(iVar4 == 0) & 0xfffffec9) + 0x17e);
      FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),4,DAT_001e3c60,1,uVar5);
      return;
    }
    uVar5 = FUN_00134ea0(iVar20,1,1,iVar4);
    pbVar8 = (byte *)FUN_0012ee00(DAT_001e4648,puVar10 + (1 - (DAT_001e4648 + 0x80)),iVar20,
                                  DAT_001e3c60,1,uVar5);
    if (iVar20 != 1) {
      return;
    }
    *pbVar8 = *pbVar8 | 0x80;
    return;
  }
  if ((DAT_001e3be9 & 1) != 0) {
    if (DAT_001e3ce7 != '\0') {
      DAT_001e3ce0 = DAT_001e3ce0 + -1;
      bVar29 = DAT_001e3b14 != 1;
    }
    else {
      bVar29 = DAT_001e3b14 == 1;
    }
    uVar21 = (uint)(DAT_001e3ce7 != '\0');
    if (DAT_001e3cea != 0) {
      DAT_001e3ce0 = DAT_001e3ce0 + -1;
      uVar21 = uVar21 + 1;
    }
    iVar4 = (-(uint)!bVar29 & 2) + 2;
    if ((DAT_001e3ce0 != 0) && (DAT_001e3afc == 0)) {
      uVar11 = dcgettext(0,"skipping prefixes on this instruction",5);
      FUN_0011d8a0(uVar11);
    }
    pbVar8 = (byte *)FUN_00116fb0(uVar21 + 3 + iVar4);
    if (DAT_001e3ce7 != '\0') {
      *pbVar8 = 0x66;
      pbVar8 = pbVar8 + 1;
    }
    pbVar13 = pbVar8 + 1;
    if (DAT_001e3cea != 0) {
      *pbVar8 = DAT_001e3cea;
      pbVar13 = pbVar8 + 2;
      pbVar8 = pbVar8 + 1;
    }
    *pbVar8 = (byte)DAT_001e3bcc;
    if (*(char *)(DAT_001e3c68 + 0x18) == '\x02') {
      uVar28 = *(ulong *)(DAT_001e3c68 + 0x10);
      if (((iVar4 == 2) && (0xffff < uVar28)) && (0xffff < uVar28 + 0x8000)) {
        uVar11 = dcgettext(0,"16-bit jump out of range",5);
        FUN_0011da70(uVar11);
        return;
      }
      FUN_00131030(pbVar13,uVar28,iVar4);
    }
    else {
      uVar5 = FUN_00134ea0(iVar4,0,0,DAT_001e3ca0);
      FUN_0012ee00(DAT_001e4648,(long)pbVar13 - (DAT_001e4648 + 0x80),iVar4,DAT_001e3c68,0,uVar5);
    }
    uVar11 = DAT_001e3bc0;
    if (*(char *)(DAT_001e3c60 + 3) != '\x02') {
      uVar12 = dcgettext(0,"can\'t handle non absolute segment in `%s\'",5);
      FUN_0011da70(uVar12,uVar11);
    }
    uVar11 = DAT_001e3c60[2];
    uVar12 = 2;
    pbVar13 = pbVar13 + iVar4;
LAB_0013817e:
    FUN_00131030(pbVar13,uVar11,uVar12);
    return;
  }
  if ((DAT_001e3adc == 0) || (DAT_001e3bcc != 0xfae)) {
    if (DAT_001e3ae0 != 0) {
      if (DAT_001e3bcc == 0xf0) {
        return;
      }
LAB_00137bee:
      DAT_001e3ce9 = 0;
    }
  }
  else {
    if (((DAT_001e3c24 == 1) && (DAT_001e3c34 == 1)) &&
       (((DAT_001e3c60[2] & 0xffffffffffffffef) == 0xe8 || (DAT_001e3c60[2] == 0xf0)))) {
      pbVar13 = (byte *)FUN_00116fb0(5);
      uVar12 = 5;
      uVar11 = 0x240483f0;
      goto LAB_0013817e;
    }
    if (DAT_001e3ae0 != 0) goto LAB_00137bee;
  }
  if ((_DAT_001e3bec & 0x7000600) != 0) {
    lVar23 = 0;
    do {
      if ((&DAT_001e3ce4)[lVar23] != '\0') {
        uVar21 = (uint)lVar23;
        if (uVar21 == 0) {
LAB_00137a7e:
                    /* WARNING: Subroutine does not return */
          FUN_0011dd00("../../gas/config/tc-i386.c",0x1e38,"output_insn");
        }
        if (uVar21 < 3) {
          FUN_00117220();
        }
        else if (uVar21 != 6) goto LAB_00137a7e;
      }
      lVar23 = lVar23 + 1;
    } while (lVar23 != 7);
    if (DAT_001e3cfc != 0) {
                    /* WARNING: Subroutine does not return */
      FUN_0011dd00("../../gas/config/tc-i386.c",0x1e3f,"output_insn");
    }
    lVar23 = FUN_00116fb0(DAT_001e3d14);
    if (DAT_001e3d14 != 0) {
      lVar16 = 0;
      do {
        *(undefined1 *)(lVar23 + lVar16) = (&DAT_001e3d10)[lVar16];
        lVar16 = lVar16 + 1;
      } while ((uint)lVar16 < DAT_001e3d14);
    }
    goto LAB_00137e10;
  }
  if (DAT_001e3bd4 != 1) {
    if (DAT_001e3bd4 == 0) {
      uVar11 = dcgettext(0,"pseudo prefix without instruction",5);
      FUN_0011db40(*(undefined8 *)(lVar1 + 0x40),*(undefined4 *)(lVar1 + 0x48),uVar11);
      return;
    }
    if (DAT_001e3bd4 == 2) {
      if ((DAT_001e3bcc & 0xff0000) != 0) {
        uVar21 = DAT_001e3bcc >> 0x10 & 0xff;
        if ((DAT_001e3bda & 0x10) != 0) goto LAB_00137dbf;
LAB_00137dd0:
        FUN_00131f90();
      }
    }
    else {
      if (DAT_001e3bd4 != 3) {
                    /* WARNING: Subroutine does not return */
        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e15,"output_insn");
      }
      if ((DAT_001e3bcc & 0xff000000) != 0) {
        uVar21 = DAT_001e3bcc >> 0x18;
LAB_00137dbf:
        if ((uVar21 != 0xf3) || (DAT_001e3ce8 != -0xd)) goto LAB_00137dd0;
      }
    }
  }
  if ((((DAT_001e3b04 == 2) && (DAT_001e3c24 == 2)) && (DAT_001e3c9c == 0x18b)) &&
     (DAT_001e3cea == 0)) {
    FUN_00131f90(0x40);
  }
  pcVar24 = &DAT_001e3ce4;
  do {
    while (*pcVar24 == '\0') {
      pcVar24 = pcVar24 + 1;
      if (pcVar24 == &DAT_001e3ceb) goto LAB_00137e10;
    }
    FUN_00117220();
    pcVar24 = pcVar24 + 1;
  } while (pcVar24 != &DAT_001e3ceb);
LAB_00137e10:
  if (DAT_001e3bd4 == 1) {
    FUN_00117220(DAT_001e3bcc);
  }
  else {
    if (DAT_001e3bd4 == 3) {
      puVar7 = (undefined1 *)FUN_00116fb0(3);
      puVar10 = puVar7 + 1;
      *puVar7 = (char)(DAT_001e3bcc >> 0x10);
    }
    else if (DAT_001e3bd4 == 4) {
      puVar7 = (undefined1 *)FUN_00116fb0(4);
      *puVar7 = (char)(DAT_001e3bcc >> 0x18);
      puVar10 = puVar7 + 2;
      puVar7[1] = (char)(DAT_001e3bcc >> 0x10);
    }
    else {
      if (DAT_001e3bd4 != 2) {
                    /* WARNING: Subroutine does not return */
        FUN_0011dd00("../../gas/config/tc-i386.c",0x1e5c,"output_insn");
      }
      puVar10 = (undefined1 *)FUN_00116fb0(2);
    }
    *puVar10 = (char)(DAT_001e3bcc >> 8);
    puVar10[1] = (char)DAT_001e3bcc;
  }
  if ((((DAT_001e3be8 & 8) != 0) &&
      (FUN_00117220(DAT_001e3cf0 * 8 | DAT_001e3cf4 << 6 | DAT_001e3cec), DAT_001e3cec == 4)) &&
     ((DAT_001e3cf4 != 3 && ((DAT_001e3cb0 == 0 || ((*(byte *)(DAT_001e3cb0 + 0xb) & 0x40) == 0)))))
     ) {
    FUN_00117220(DAT_001e3d04 * 8 | DAT_001e3d08 << 6 | _DAT_001e3d00);
  }
  if (DAT_001e3c2c != 0) {
    if (DAT_001e3c24 == 0) {
      return;
    }
    uVar28 = 0;
    uVar21 = DAT_001e3c24;
    do {
      uVar22 = DAT_001e3c24;
      if ((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 2) & 0x1f) != 0) {
        lVar23 = (long)(&DAT_001e3c60)[uVar28];
        bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);
        bVar3 = bVar15 >> 4 & 1;
        if (*(char *)(lVar23 + 0x18) == '\x02') {
          lVar23 = *(long *)(lVar23 + 0x10);
          if (bVar3 == 0) {
            if ((bVar15 & 1) == 0) {
              bVar15 = bVar15 >> 1 & 1;
              cVar25 = (-(bVar15 == 0) & 2U) + 2;
              cVar19 = (-(bVar15 == 0) & 2U) + 2;
            }
            else {
              cVar25 = '\x01';
              cVar19 = '\x01';
              lVar23 = lVar23 >> ((byte)DAT_001e3d38 & 0x3f);
            }
          }
          else {
            cVar25 = '\b';
            cVar19 = '\b';
          }
          uVar11 = FUN_00135250(lVar23,cVar19);
          uVar12 = FUN_00116fb0(cVar25);
          FUN_00131030(uVar12,uVar11,cVar19);
          uVar22 = DAT_001e3c24;
        }
        else {
          if (bVar3 == 0) {
            if ((bVar15 & 1) != 0) {
LAB_00138302:
                    /* WARNING: Subroutine does not return */
              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ec2,"output_disp");
            }
            bVar3 = bVar15 >> 1;
            bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar28 & 0xffffffff) * 8 + 2);
            cVar19 = (-((bVar3 & 1) == 0) & 2U) + 2;
            uVar22 = (&DAT_001e3c88)[uVar28];
          }
          else {
            uVar22 = (&DAT_001e3c88)[uVar28];
            if ((bVar15 & 1) != 0) goto LAB_00138302;
            cVar19 = '\b';
          }
          uVar30 = (ulong)(bVar15 >> 3) & 0xffffffff00000001;
          uVar22 = uVar22 & 1;
          if ((uVar22 != 0) && (DAT_001e3c34 != 0)) {
            uVar9 = 0;
            cVar25 = '\0';
            do {
              if ((*(byte *)((long)&DAT_001e3c38 + uVar9 * 8 + 1) & 0xfc) != 0) {
                if (cVar25 != '\0') {
                    /* WARNING: Subroutine does not return */
                  FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed1,"output_disp");
                }
                bVar15 = *(byte *)((long)&DAT_001e3c38 + (uVar9 & 0xffffffff) * 8 + 1);
                if ((char)bVar15 < '\0') {
                  lVar16 = 8;
                  cVar25 = '\b';
                }
                else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {
                  bVar15 = bVar15 >> 4 & 1;
                  lVar16 = (ulong)(-(uint)(bVar15 == 0) & 2) + 2;
                  cVar25 = (-(bVar15 == 0) & 2U) + 2;
                }
                else {
                  lVar16 = 1;
                  cVar25 = '\x01';
                }
                *(long *)(lVar23 + 0x10) = *(long *)(lVar23 + 0x10) - lVar16;
              }
              uVar9 = uVar9 + 1;
            } while ((uint)uVar9 < uVar21);
            if (cVar25 == '\0') {
                    /* WARNING: Subroutine does not return */
              FUN_0011dd00("../../gas/config/tc-i386.c",0x1ed6,"output_disp");
            }
          }
          lVar16 = FUN_00116fb0(cVar19);
          uVar21 = FUN_00134ea0(cVar19,uVar22,uVar30 & 0xffffffff,(&DAT_001e3c9c)[uVar28]);
          lVar23 = DAT_001e4648;
          if (DAT_001e3a80 == 0) {
            plVar14 = (&DAT_001e3c60)[uVar28];
            lVar16 = lVar16 - (DAT_001e4648 + 0x80);
          }
          else {
            plVar14 = (&DAT_001e3c60)[uVar28];
            if (DAT_001e3a80 == *plVar14) {
              if ((uVar21 == 2) || (uVar21 == 0x184)) {
LAB_001386f0:
                if ((char)plVar14[3] != '\x03') {
                  if ((char)plVar14[3] == '\x13') {
                    uVar30 = (ulong)uVar21;
                    lVar23 = FUN_0012bc00(plVar14[1]);
                    uVar21 = (uint)uVar30;
                    plVar14 = (&DAT_001e3c60)[uVar28];
                    if (*(char *)(lVar23 + 0x18) == '\x14') goto LAB_00138730;
                  }
                  goto LAB_001385b1;
                }
LAB_00138730:
                lVar16 = lVar16 - (DAT_001e4648 + 0x80);
              }
              else {
                if (uVar21 == 1) {
                  if (DAT_001e3b10 == 0) goto LAB_001383be;
                  goto LAB_001386f0;
                }
LAB_001385b1:
                lVar16 = lVar16 - (DAT_001e4648 + 0x80);
                lVar23 = DAT_001e4648;
                if (uVar21 != 9) goto LAB_001383d2;
              }
              lVar23 = DAT_001e4648;
              if (lVar1 == DAT_001e4648) {
                lVar17 = -lVar6;
              }
              else {
                uVar30 = *(ulong *)(lVar1 + 0x10);
                lVar17 = uVar30 - lVar6;
                for (lVar26 = *(long *)(lVar1 + 0x38); (lVar26 != 0 && (lVar26 != DAT_001e4648));
                    lVar26 = *(long *)(lVar26 + 0x38)) {
                  lVar17 = lVar17 + *(long *)(lVar26 + 0x10);
                }
              }
              if (DAT_001e3b10 == 0) {
                plVar14[2] = plVar14[2] + lVar16 + lVar17;
                uVar21 = 0x16b;
              }
              else {
                uVar21 = (uint)(uVar21 == 1) * 3 + 0x18e;
              }
            }
            else {
LAB_001383be:
              lVar16 = lVar16 - (DAT_001e4648 + 0x80);
            }
          }
LAB_001383d2:
          pbVar8 = (byte *)FUN_0012ee00(lVar23,lVar16,cVar19,plVar14,uVar22,uVar21,uVar30);
          lVar23 = DAT_001e3cb0;
          uVar22 = DAT_001e3c24;
          if (DAT_001e3ce7 == '\0') {
            if (DAT_001da788 == 0) {
              if (DAT_001e3cf4 == 0 && DAT_001e3b10 == 0) {
LAB_00138410:
                if (DAT_001e3cec == 5) goto LAB_0013841d;
              }
            }
            else if (DAT_001e3cf4 == 2) {
LAB_0013841d:
              if (DAT_001e3c24 == 1) {
                if ((DAT_001e3bcc != 0xff) || ((DAT_001e3cf0 - 2U & 0xfffffffd) != 0)) {
                  if (DAT_001e3c34 == 0) {
                    return;
                  }
                  goto LAB_00137e9a;
                }
              }
              else if ((DAT_001e3c24 != 2) ||
                      (((DAT_001e3bcc != 0x8b && (DAT_001e3bcc != 0x85)) &&
                       ((DAT_001e3bcc & 199) != 3)))) goto LAB_00138326;
              if (DAT_001e3b10 == 0) {
                *pbVar8 = *pbVar8 | 0x10;
              }
              else {
                bVar15 = *pbVar8 & 0xf7 | (DAT_001e3cf8 != 0) * '\b';
                *pbVar8 = bVar15;
                if ((lVar23 != 0) && (0xfd < *(byte *)(lVar23 + 0x11))) {
                  *pbVar8 = bVar15 | 0x10;
                }
              }
            }
            else if (DAT_001e3cf4 == 0) goto LAB_00138410;
          }
        }
      }
LAB_00138326:
      uVar21 = uVar22;
      uVar28 = uVar28 + 1;
    } while ((uint)uVar28 < uVar21);
  }
  if ((DAT_001e3c34 != 0) && (DAT_001e3c24 != 0)) {
LAB_00137e9a:
    uVar28 = 0;
    do {
      if (((DAT_001e3d28 == 0) || (*(int *)(DAT_001e3d28 + 4) != (int)uVar28)) &&
         ((*(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1) & 0xfc) != 0)) {
        bVar15 = *(byte *)((long)&DAT_001e3bc8 + (uVar28 + 0xe) * 8 + 1);
        if (*(char *)((long)(&DAT_001e3c60)[uVar28] + 0x18) == '\x02') {
          if ((char)bVar15 < '\0') {
            cVar25 = '\b';
            cVar19 = '\b';
          }
          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {
            bVar15 = bVar15 >> 4 & 1;
            cVar25 = (-(bVar15 == 0) & 2U) + 2;
            cVar19 = (-(bVar15 == 0) & 2U) + 2;
          }
          else {
            cVar25 = '\x01';
            cVar19 = '\x01';
          }
          uVar11 = FUN_00135250(*(undefined8 *)((long)(&DAT_001e3c60)[uVar28] + 0x10),cVar19);
          uVar12 = FUN_00116fb0(cVar25);
          FUN_00131030(uVar12,uVar11,cVar19);
        }
        else {
          if ((char)bVar15 < '\0') {
            cVar19 = '\b';
            cVar25 = '\b';
          }
          else if (((bVar15 & 4) == 0) && ((bVar15 & 8) == 0)) {
            bVar15 = bVar15 >> 4 & 1;
            cVar25 = (-(bVar15 == 0) & 2U) + 2;
            cVar19 = (-(bVar15 == 0) & 2U) + 2;
          }
          else {
            cVar19 = '\x01';
            cVar25 = '\x01';
          }
          bVar15 = 0;
          if ((((*(byte *)((long)&DAT_001e3c38 + uVar28 * 8 + 1) & 0x40) != 0) &&
              (bVar15 = 1, DAT_001e3c20 != 'q')) && (bVar15 = 0, DAT_001e3c20 == '\0')) {
            bVar15 = DAT_001e3bea >> 3 & 1;
          }
          lVar23 = FUN_00116fb0(cVar19);
          iVar4 = FUN_00134ea0(cVar25,0,bVar15,(&DAT_001e3c9c)[uVar28]);
          if ((iVar4 - 1U < 2) || (iVar4 == 0x184)) {
            plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];
            if ((DAT_001e3a80 != 0) && (DAT_001e3a80 == *plVar14)) {
              if ((char)plVar14[3] == '\x03') {
LAB_00138a92:
                lVar16 = DAT_001e4648;
                lVar26 = lVar23 - (DAT_001e4648 + 0x80);
                if (lVar1 == DAT_001e4648) {
                  lVar18 = -lVar6;
                }
                else {
                  lVar23 = *(long *)(lVar1 + 0x10);
                  lVar18 = lVar23 - lVar6;
                  for (lVar17 = *(long *)(lVar1 + 0x38); (lVar17 != 0 && (DAT_001e4648 != lVar17));
                      lVar17 = *(long *)(lVar17 + 0x38)) {
                    lVar18 = lVar18 + *(long *)(lVar17 + 0x10);
                  }
                }
                if (DAT_001e3b10 == 0) {
                  iVar4 = 0x16b;
                }
                else if (cVar25 == '\x04') {
                  iVar4 = 0x18e;
                }
                else if (cVar25 == '\b') {
                  iVar4 = 0x191;
                }
                plVar14[2] = plVar14[2] + lVar26 + lVar18;
                goto LAB_00137fa9;
              }
              if ((char)plVar14[3] == '\x13') {
                lVar16 = FUN_0012bc00(plVar14[1]);
                plVar14 = (long *)(&DAT_001e3bc0)[uVar28 + 0x14];
                if (*(char *)(lVar16 + 0x18) == '\x14') goto LAB_00138a92;
              }
            }
            lVar26 = lVar23 - (DAT_001e4648 + 0x80);
            lVar16 = DAT_001e4648;
          }
          else {
            plVar14 = (&DAT_001e3c60)[uVar28];
            lVar26 = lVar23 - (DAT_001e4648 + 0x80);
            lVar16 = DAT_001e4648;
          }
LAB_00137fa9:
          FUN_0012ee00(lVar16,lVar26,cVar25,plVar14,0,iVar4,lVar23);
        }
      }
      uVar21 = (int)uVar28 + 1;
      uVar28 = (ulong)uVar21;
    } while (uVar21 < DAT_001e3c24);
  }
  return;
}

