
int relax_segment(frag *segment_frag_root,segT segment,int pass)

{
  offsetT *poVar1;
  offsetT *poVar2;
  addressT aVar3;
  symbolS *psVar4;
  addressT aVar5;
  offsetT oVar6;
  frag *pfVar7;
  bool bVar8;
  undefined4 uVar9;
  int iVar10;
  uint uVar11;
  ulong uVar12;
  ulong uVar13;
  segT paVar14;
  char *format;
  valueT vVar15;
  fragS *pfVar16;
  long lVar17;
  char *pcVar18;
  relax_stateT rVar19;
  long lVar20;
  frag *pfVar21;
  long lVar22;
  ulong uVar23;
  uint uVar24;
  uint uVar25;
  short sVar26;
  addressT aVar27;
  ulong uVar28;
  int local_54;
  ulong local_48;
  
  subseg_change(segment,0);
  if (segment_frag_root == (frag *)0x0) {
    return 0;
  }
  sVar26 = 0;
  uVar28 = 0;
  pfVar21 = segment_frag_root;
  lVar22 = 0;
  do {
    lVar17 = lVar22;
    rVar19 = pfVar21->fr_type;
    pfVar21->fr_address = uVar28;
    *(short *)&pfVar21->field_0x58 = sVar26;
    uVar28 = pfVar21->fr_fix + uVar28;
    pfVar21->field_0x5a = pfVar21->field_0x5a & 0xfe;
    switch(rVar19) {
    case rs_dummy:
    case rs_broken_word:
    case rs_fill_nop:
    default:
      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);
                    /* WARNING: Subroutine does not return */
      as_fatal(pcVar18,(ulong)rVar19,0xaa0,"../../gas/write.c");
    case rs_fill:
      poVar1 = &pfVar21->fr_offset;
      poVar2 = &pfVar21->fr_var;
      pfVar21 = pfVar21->fr_next;
      uVar28 = *poVar1 * *poVar2 + uVar28;
      break;
    case rs_align:
    case rs_align_code:
    case rs_align_test:
      uVar12 = -1L << ((byte)pfVar21->fr_offset & 0x3f);
      uVar12 = ~uVar12 + uVar28 & uVar12;
      uVar13 = uVar12 - uVar28;
      if (((pfVar21->fr_subtype == 0) || (uVar13 <= pfVar21->fr_subtype)) &&
         (uVar23 = pfVar21->fr_var, uVar28 = uVar12, uVar13 % uVar23 != 0)) {
        pcVar18 = (char *)dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",
                                     "alignment padding (%lu bytes) not a multiple of %ld",uVar13,5)
        ;
        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18,uVar13,uVar23);
        uVar28 = uVar12 - uVar13 % (ulong)pfVar21->fr_var;
      }
    case rs_org:
      pfVar21 = pfVar21->fr_next;
      sVar26 = sVar26 + 1;
      break;
    case rs_machine_dependent:
      if (pfVar21->fr_symbol != (symbolS *)0x0) {
        resolve_symbol_value(pfVar21->fr_symbol);
      }
      iVar10 = md_estimate_size_before_relax(pfVar21,segment);
      uVar28 = (long)iVar10 + uVar28;
    case rs_space:
    case rs_space_nop:
      pfVar21 = pfVar21->fr_next;
      break;
    case rs_leb128:
      pfVar21->fr_offset = 1;
      pfVar21 = pfVar21->fr_next;
      uVar28 = uVar28 + 1;
      break;
    case rs_cfa:
      iVar10 = eh_frame_estimate_size_before_relax(pfVar21);
      pfVar21 = pfVar21->fr_next;
      uVar28 = (long)iVar10 + uVar28;
      break;
    case rs_dwarf2dbg:
      iVar10 = dwarf2dbg_estimate_size_before_relax(pfVar21);
      pfVar21 = pfVar21->fr_next;
      uVar28 = (long)iVar10 + uVar28;
    }
    lVar22 = lVar17 + 1;
  } while (pfVar21 != (frag *)0x0);
  local_48 = lVar17 + 1;
  local_54 = 0;
  if (local_48 <= local_48 * local_48) {
    local_48 = local_48 * local_48;
  }
  uVar25 = 0;
  do {
    if (segment_frag_root == (frag *)0x0) {
      return local_54;
    }
    bVar8 = false;
    lVar22 = 0;
    pfVar21 = segment_frag_root;
    aVar27 = segment_frag_root->fr_address;
LAB_00131000:
    aVar3 = lVar22 + aVar27;
    psVar4 = pfVar21->fr_symbol;
    pfVar21->fr_address = aVar3;
    uVar28 = pfVar21->fr_offset;
    rVar19 = pfVar21->fr_type;
    pfVar21->field_0x5a = pfVar21->field_0x5a & 0xfe | pfVar21->field_0x5a & 1 ^ 1;
    switch(rVar19) {
    case rs_dummy:
    case rs_broken_word:
    case rs_fill_nop:
    default:
      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);
                    /* WARNING: Subroutine does not return */
      as_fatal(pcVar18,(ulong)rVar19,0xbf4,"../../gas/write.c");
    case rs_align:
    case rs_align_code:
    case rs_align_test:
      uVar28 = -1L << ((byte)uVar28 & 0x3f);
      lVar17 = pfVar21->fr_fix + aVar27;
      lVar20 = aVar3 + pfVar21->fr_fix;
      uVar13 = (ulong)pfVar21->fr_subtype;
      uVar23 = lVar17 + ~uVar28 & uVar28;
      uVar12 = (lVar20 + ~uVar28 & uVar28) - lVar20;
      if (pfVar21->fr_subtype == 0) {
        uVar28 = (lVar17 - uVar23) + uVar12;
      }
      else if (uVar13 < uVar23 - lVar17) {
        uVar28 = uVar12;
        if (uVar13 < uVar12) goto switchD_00131039_caseD_1;
      }
      else {
        uVar28 = (lVar17 - uVar23) + uVar12;
        if (uVar13 < uVar12) {
          uVar12 = 0;
          uVar28 = lVar17 - uVar23;
        }
      }
      if (-1 < (long)uVar28) goto LAB_001312d8;
      if (((uVar25 & 0x10) != 0) && ((uVar25 & 0xe) != 0)) {
                    /* WARNING: Load size is inaccurate */
        lVar17 = *segment->userdata;
        pfVar16 = frag_alloc((obstack *)(lVar17 + 0x30));
        lVar20 = pfVar21->fr_var + *(long *)(lVar17 + 0x48);
        *(long *)(lVar17 + 0x48) = lVar20;
        if (lVar20 == *(long *)(lVar17 + 0x40)) {
          *(byte *)(lVar17 + 0x80) = *(byte *)(lVar17 + 0x80) | 2;
        }
        uVar23 = lVar20 + *(ulong *)(lVar17 + 0x60) & ~*(ulong *)(lVar17 + 0x60);
        uVar13 = *(ulong *)(lVar17 + 0x50);
        *(ulong *)(lVar17 + 0x48) = uVar23;
        if (uVar13 - *(long *)(lVar17 + 0x38) < uVar23 - *(long *)(lVar17 + 0x38)) {
          *(ulong *)(lVar17 + 0x48) = uVar13;
          uVar23 = uVar13;
        }
        *(ulong *)(lVar17 + 0x40) = uVar23;
        aVar27 = pfVar21->last_fr_address;
        pfVar16->fr_address = pfVar21->fr_address;
        pfVar16->last_fr_address = aVar27;
        oVar6 = pfVar21->fr_var;
        pfVar16->fr_fix = pfVar21->fr_fix;
        pfVar16->fr_var = oVar6;
        psVar4 = pfVar21->fr_symbol;
        pfVar16->fr_offset = pfVar21->fr_offset;
        pfVar16->fr_symbol = psVar4;
        pfVar7 = pfVar21->fr_next;
        pfVar16->fr_opcode = pfVar21->fr_opcode;
        pfVar16->fr_next = pfVar7;
        uVar11 = pfVar21->fr_line;
        uVar9 = *(undefined4 *)&pfVar21->field_0x4c;
        pfVar16->fr_file = pfVar21->fr_file;
        pfVar16->fr_line = uVar11;
        *(undefined4 *)&pfVar16->field_0x4c = uVar9;
        uVar9 = *(undefined4 *)&pfVar21->field_0x58;
        rVar19 = pfVar21->fr_type;
        pfVar16->line = pfVar21->line;
        *(undefined4 *)&pfVar16->field_0x58 = uVar9;
        pfVar16->fr_type = rVar19;
        pfVar16->fr_subtype = pfVar21->fr_subtype;
        memcpy(pfVar16->fr_literal,pfVar21->fr_literal + pfVar21->fr_fix,pfVar21->fr_var);
        oVar6 = pfVar21->fr_offset;
        aVar27 = uVar12 + aVar3 + pfVar21->fr_fix;
        pfVar16->fr_type = rs_fill;
        pfVar16->fr_address = aVar27;
        lVar17 = (1L << ((byte)oVar6 & 0x3f)) / pfVar21->fr_var;
        pfVar16->fr_fix = 0;
        pfVar16->fr_offset = lVar17;
        lVar20 = 1L << ((byte)pfVar21->fr_offset & 0x3f);
        if (lVar17 * pfVar16->fr_var - lVar20 != 0) {
          pfVar16->fr_offset = lVar20;
          pfVar16->fr_var = 1;
        }
        uVar28 = uVar28 + lVar20;
        pfVar16->fr_address = aVar27 - (uVar28 + lVar22);
        pfVar16->field_0x5a = pfVar16->field_0x5a & 0xfe | pfVar16->field_0x5a & 1 ^ 1;
        pfVar21->fr_next = pfVar16;
        goto LAB_00131409;
      }
      pfVar16 = pfVar21->fr_next;
      lVar22 = lVar22 + uVar28;
      goto LAB_0013137d;
    case rs_org:
      if (psVar4 != (symbolS *)0x0) {
        paVar14 = S_GET_SEGMENT(psVar4);
        if (paVar14->vma != 0) {
                    /* WARNING: Subroutine does not return */
          as_abort("../../gas/write.c",0xb80,"relax_segment");
        }
        vVar15 = S_GET_VALUE(psVar4);
        uVar28 = uVar28 + vVar15;
      }
      pfVar16 = pfVar21->fr_next;
      if (pfVar16 == (fragS *)0x0) {
                    /* WARNING: Subroutine does not return */
        as_abort("../../gas/write.c",0xb84,"relax_segment");
      }
      aVar5 = pfVar16->fr_address;
      if (uVar28 < aVar3 + pfVar21->fr_fix) {
        if (pass < 2) goto code_r0x00131269;
        pcVar18 = (char *)dcgettext(0,"attempt to move .org backwards",5);
        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);
        pfVar21->fr_type = rs_align;
        pfVar21->fr_subtype = 0;
        pfVar21->fr_offset = 0;
        pfVar21->fr_fix = aVar5 - aVar27;
        pfVar16 = pfVar21->fr_next;
        goto LAB_001311e7;
      }
      uVar28 = uVar28 - (aVar5 + lVar22);
LAB_00131409:
      if (uVar28 != 0) {
        rVar19 = pfVar21->fr_type;
        goto LAB_00131375;
      }
      pfVar21 = pfVar16;
      aVar27 = pfVar16->fr_address;
      goto LAB_00131000;
    case rs_space:
    case rs_space_nop:
      if (psVar4 != (symbolS *)0x0) {
        vVar15 = S_GET_VALUE(psVar4);
        paVar14 = S_GET_SEGMENT(psVar4);
        if (((paVar14 == (segT)(_bfd_std_section + 0x230)) &&
            (iVar10 = S_IS_COMMON(psVar4), iVar10 == 0)) &&
           (iVar10 = S_IS_DEFINED(psVar4), iVar10 != 0)) {
          if ((long)vVar15 < 0) {
            if (pass < 2) {
              pfVar16 = pfVar21->fr_next;
              local_54 = 1;
            }
            else {
              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)
              ;
              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);
              pfVar21->fr_symbol = (symbolS *)0x0;
              pfVar16 = pfVar21->fr_next;
            }
            goto LAB_001311e7;
          }
          pfVar16 = pfVar21->fr_next;
          uVar28 = ((pfVar21->fr_fix + aVar27) - pfVar16->fr_address) + vVar15;
          goto LAB_00131409;
        }
        pcVar18 = (char *)dcgettext(0,".space specifies non-absolute value",5);
        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);
        pfVar21->fr_symbol = (symbolS *)0x0;
      }
    case rs_fill:
    case rs_machine_dependent:
switchD_00131039_caseD_1:
      pfVar16 = pfVar21->fr_next;
LAB_001311e7:
      if (pfVar16 == (fragS *)0x0) goto LAB_001312f1;
LAB_001311f0:
      pfVar21 = pfVar16;
      aVar27 = pfVar16->fr_address;
      goto LAB_00131000;
    case rs_leb128:
      vVar15 = resolve_symbol_value(psVar4);
      uVar11 = sizeof_leb128(vVar15,pfVar21->fr_subtype);
      uVar28 = (ulong)uVar11 - pfVar21->fr_offset;
      pfVar21->fr_offset = (ulong)uVar11;
      goto LAB_001312d8;
    case rs_cfa:
      iVar10 = eh_frame_relax_frag(pfVar21);
      uVar28 = (ulong)iVar10;
LAB_001312d8:
      pfVar16 = pfVar21->fr_next;
joined_r0x00131369:
      if (uVar28 != 0) {
        rVar19 = pfVar21->fr_type;
LAB_00131375:
        lVar22 = lVar22 + uVar28;
        if (rVar19 == rs_leb128) {
LAB_001313e8:
          uVar25 = uVar25 + 0x10;
          bVar8 = true;
        }
        else {
LAB_0013137d:
          if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;
          uVar25 = 0;
          bVar8 = true;
        }
        goto LAB_001311e7;
      }
      if (pfVar16 != (fragS *)0x0) goto LAB_001311f0;
LAB_001312f1:
      if ((lVar22 == 0) && ((uVar25 & 0x10) == 0)) {
        uVar11 = uVar25 + 1;
        uVar24 = uVar25 & 0xfffffff0;
        uVar25 = 0;
        if (uVar24 != 0) {
          uVar25 = uVar11;
        }
      }
      else {
        uVar25 = 0;
      }
      if (!bVar8) {
        do {
          if (segment_frag_root->last_fr_address != segment_frag_root->fr_address) {
            segment_frag_root->last_fr_address = segment_frag_root->fr_address;
            local_54 = 1;
          }
          segment_frag_root = segment_frag_root->fr_next;
        } while (segment_frag_root != (frag *)0x0);
        return local_54;
      }
      local_48 = local_48 - 1;
      if (local_48 == 0) {
        pcVar18 = segment->name;
        format = (char *)dcgettext(0,
                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"
                                   ,5);
                    /* WARNING: Subroutine does not return */
        as_fatal(format,pcVar18);
      }
      break;
    case rs_dwarf2dbg:
      iVar10 = dwarf2dbg_relax_frag(pfVar21);
      pfVar16 = pfVar21->fr_next;
      uVar28 = (ulong)iVar10;
      goto joined_r0x00131369;
    }
  } while( true );
code_r0x00131269:
  local_54 = 1;
  pfVar21 = pfVar16;
  aVar27 = aVar5;
  goto LAB_00131000;
}



undefined4 FUN_00130f10(ulong *param_1,undefined8 *param_2,int param_3)

{
  ulong *puVar1;
  undefined4 uVar2;
  bool bVar3;
  int iVar4;
  uint uVar5;
  ulong uVar6;
  ulong uVar7;
  long lVar8;
  long lVar9;
  undefined8 uVar10;
  ulong *puVar11;
  undefined8 uVar12;
  ulong *puVar13;
  long lVar14;
  ulong uVar15;
  ulong uVar16;
  uint uVar17;
  uint uVar18;
  short sVar19;
  ulong uVar20;
  undefined4 local_54;
  ulong local_48;
  
  FUN_00129130(param_2,0);
  if (param_1 == (ulong *)0x0) {
    return 0;
  }
  sVar19 = 0;
  uVar20 = 0;
  puVar13 = param_1;
  lVar14 = 0;
  do {
    lVar8 = lVar14;
    uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);
    *puVar13 = uVar20;
    *(short *)(puVar13 + 0xb) = sVar19;
    uVar20 = puVar13[2] + uVar20;
    *(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;
    switch(uVar2) {
    case 0:
    case 6:
    case 10:
    default:
      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);
                    /* WARNING: Subroutine does not return */
      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");
    case 1:
      puVar11 = puVar13 + 4;
      puVar1 = puVar13 + 3;
      puVar13 = (ulong *)puVar13[7];
      uVar20 = *puVar11 * *puVar1 + uVar20;
      break;
    case 2:
    case 3:
    case 4:
      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);
      uVar6 = ~uVar6 + uVar20 & uVar6;
      uVar7 = uVar6 - uVar20;
      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&
         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {
        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",
                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);
        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);
        uVar20 = uVar6 - uVar7 % puVar13[3];
      }
    case 5:
      puVar13 = (ulong *)puVar13[7];
      sVar19 = sVar19 + 1;
      break;
    case 7:
      if (puVar13[5] != 0) {
        FUN_0012b400();
      }
      iVar4 = FUN_00136870(puVar13,param_2);
      uVar20 = (long)iVar4 + uVar20;
    case 8:
    case 9:
      puVar13 = (ulong *)puVar13[7];
      break;
    case 0xb:
      puVar13[4] = 1;
      puVar13 = (ulong *)puVar13[7];
      uVar20 = uVar20 + 1;
      break;
    case 0xc:
      iVar4 = FUN_00115780(puVar13);
      puVar13 = (ulong *)puVar13[7];
      uVar20 = (long)iVar4 + uVar20;
      break;
    case 0xd:
      iVar4 = FUN_00111530(puVar13);
      puVar13 = (ulong *)puVar13[7];
      uVar20 = (long)iVar4 + uVar20;
    }
    lVar14 = lVar8 + 1;
  } while (puVar13 != (ulong *)0x0);
  local_48 = lVar8 + 1;
  local_54 = 0;
  if (local_48 <= local_48 * local_48) {
    local_48 = local_48 * local_48;
  }
  uVar18 = 0;
  do {
    if (param_1 == (ulong *)0x0) {
      return local_54;
    }
    bVar3 = false;
    lVar14 = 0;
    puVar13 = param_1;
    uVar20 = *param_1;
LAB_00131000:
    uVar7 = lVar14 + uVar20;
    uVar15 = puVar13[5];
    *puVar13 = uVar7;
    uVar6 = puVar13[4];
    iVar4 = *(int *)((long)puVar13 + 0x5c);
    *(byte *)((long)puVar13 + 0x5a) =
         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;
    switch(iVar4) {
    case 0:
    case 6:
    case 10:
    default:
      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);
                    /* WARNING: Subroutine does not return */
      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");
    case 2:
    case 3:
    case 4:
      uVar6 = -1L << ((byte)uVar6 & 0x3f);
      lVar8 = puVar13[2] + uVar20;
      lVar9 = uVar7 + puVar13[2];
      uVar15 = (ulong)(uint)puVar13[0xc];
      uVar16 = lVar8 + ~uVar6 & uVar6;
      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;
      if ((uint)puVar13[0xc] == 0) {
        uVar6 = (lVar8 - uVar16) + uVar20;
      }
      else if (uVar15 < uVar16 - lVar8) {
        uVar6 = uVar20;
        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;
      }
      else {
        uVar6 = (lVar8 - uVar16) + uVar20;
        if (uVar15 < uVar20) {
          uVar20 = 0;
          uVar6 = lVar8 - uVar16;
        }
      }
      if (-1 < (long)uVar6) goto LAB_001312d8;
      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {
        lVar8 = *(long *)param_2[0x15];
        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);
        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);
        *(long *)(lVar8 + 0x48) = lVar9;
        if (lVar9 == *(long *)(lVar8 + 0x40)) {
          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;
        }
        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);
        uVar15 = *(ulong *)(lVar8 + 0x50);
        *(ulong *)(lVar8 + 0x48) = uVar16;
        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {
          *(ulong *)(lVar8 + 0x48) = uVar15;
          uVar16 = uVar15;
        }
        *(ulong *)(lVar8 + 0x40) = uVar16;
        uVar15 = puVar13[1];
        *puVar11 = *puVar13;
        puVar11[1] = uVar15;
        uVar15 = puVar13[3];
        puVar11[2] = puVar13[2];
        puVar11[3] = uVar15;
        uVar15 = puVar13[5];
        puVar11[4] = puVar13[4];
        puVar11[5] = uVar15;
        uVar15 = puVar13[7];
        puVar11[6] = puVar13[6];
        puVar11[7] = uVar15;
        uVar15 = puVar13[9];
        puVar11[8] = puVar13[8];
        puVar11[9] = uVar15;
        uVar15 = puVar13[0xb];
        puVar11[10] = puVar13[10];
        puVar11[0xb] = uVar15;
        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];
        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);
        uVar15 = puVar13[4];
        uVar20 = uVar20 + uVar7 + puVar13[2];
        *(undefined4 *)((long)puVar11 + 0x5c) = 1;
        *puVar11 = uVar20;
        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];
        puVar11[2] = 0;
        puVar11[4] = uVar7;
        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);
        if (uVar7 * puVar11[3] - uVar15 != 0) {
          puVar11[4] = uVar15;
          puVar11[3] = 1;
        }
        uVar6 = uVar6 + uVar15;
        *puVar11 = uVar20 - (uVar6 + lVar14);
        *(byte *)((long)puVar11 + 0x5a) =
             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;
        puVar13[7] = (ulong)puVar11;
        goto LAB_00131409;
      }
      puVar11 = (ulong *)puVar13[7];
      lVar14 = lVar14 + uVar6;
      goto LAB_0013137d;
    case 5:
      if (uVar15 != 0) {
        lVar8 = FUN_0012af60(uVar15);
        if (*(long *)(lVar8 + 0x28) != 0) {
                    /* WARNING: Subroutine does not return */
          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");
        }
        lVar8 = thunk_FUN_0012c290(uVar15);
        uVar6 = uVar6 + lVar8;
      }
      puVar11 = (ulong *)puVar13[7];
      if (puVar11 == (ulong *)0x0) {
                    /* WARNING: Subroutine does not return */
        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");
      }
      uVar15 = *puVar11;
      if (uVar6 < uVar7 + puVar13[2]) {
        if (param_3 < 2) goto code_r0x00131269;
        uVar12 = dcgettext(0,"attempt to move .org backwards",5);
        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);
        *(undefined8 *)((long)puVar13 + 0x5c) = 2;
        puVar13[4] = 0;
        puVar13[2] = uVar15 - uVar20;
        puVar11 = (ulong *)puVar13[7];
        goto LAB_001311e7;
      }
      uVar6 = uVar6 - (uVar15 + lVar14);
LAB_00131409:
      if (uVar6 != 0) {
        iVar4 = *(int *)((long)puVar13 + 0x5c);
        goto LAB_00131375;
      }
      puVar13 = puVar11;
      uVar20 = *puVar11;
      goto LAB_00131000;
    case 8:
    case 9:
      if (uVar15 != 0) {
        lVar8 = thunk_FUN_0012c290(uVar15);
        lVar9 = FUN_0012af60(uVar15);
        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&
           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {
          if (lVar8 < 0) {
            if (param_3 < 2) {
              puVar11 = (ulong *)puVar13[7];
              local_54 = 1;
            }
            else {
              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);
              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);
              puVar13[5] = 0;
              puVar11 = (ulong *)puVar13[7];
            }
            goto LAB_001311e7;
          }
          puVar11 = (ulong *)puVar13[7];
          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;
          goto LAB_00131409;
        }
        uVar12 = dcgettext(0,".space specifies non-absolute value",5);
        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);
        puVar13[5] = 0;
      }
    case 1:
    case 7:
switchD_00131039_caseD_1:
      puVar11 = (ulong *)puVar13[7];
LAB_001311e7:
      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;
LAB_001311f0:
      puVar13 = puVar11;
      uVar20 = *puVar11;
      goto LAB_00131000;
    case 0xb:
      uVar12 = FUN_0012b400(uVar15);
      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);
      uVar6 = (ulong)uVar5 - puVar13[4];
      puVar13[4] = (ulong)uVar5;
      goto LAB_001312d8;
    case 0xc:
      iVar4 = FUN_00115810(puVar13);
      uVar6 = (ulong)iVar4;
LAB_001312d8:
      puVar11 = (ulong *)puVar13[7];
joined_r0x00131369:
      if (uVar6 != 0) {
        iVar4 = *(int *)((long)puVar13 + 0x5c);
LAB_00131375:
        lVar14 = lVar14 + uVar6;
        if (iVar4 == 0xb) {
LAB_001313e8:
          uVar18 = uVar18 + 0x10;
          bVar3 = true;
        }
        else {
LAB_0013137d:
          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;
          uVar18 = 0;
          bVar3 = true;
        }
        goto LAB_001311e7;
      }
      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;
LAB_001312f1:
      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {
        uVar5 = uVar18 + 1;
        uVar17 = uVar18 & 0xfffffff0;
        uVar18 = 0;
        if (uVar17 != 0) {
          uVar18 = uVar5;
        }
      }
      else {
        uVar18 = 0;
      }
      if (!bVar3) {
        do {
          if (param_1[1] != *param_1) {
            param_1[1] = *param_1;
            local_54 = 1;
          }
          param_1 = (ulong *)param_1[7];
        } while (param_1 != (ulong *)0x0);
        return local_54;
      }
      local_48 = local_48 - 1;
      if (local_48 == 0) {
        uVar12 = *param_2;
        uVar10 = dcgettext(0,
                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"
                           ,5);
                    /* WARNING: Subroutine does not return */
        FUN_0011f870(uVar10,uVar12);
      }
      break;
    case 0xd:
      iVar4 = FUN_00111570(puVar13);
      puVar11 = (ulong *)puVar13[7];
      uVar6 = (ulong)iVar4;
      goto joined_r0x00131369;
    }
  } while( true );
code_r0x00131269:
  local_54 = 1;
  puVar13 = puVar11;
  uVar20 = uVar15;
  goto LAB_00131000;
}


PUSH R15
PUSH R14
PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
MOV RBX,RDI
SUB RSP,0x48
MOV qword ptr [RSP + 0x28],RDI
MOV RDI,RSI
MOV qword ptr [RSP + 0x38],RSI
XOR ESI,ESI
MOV dword ptr [RSP + 0x20],EDX
CALL 0x00129130
TEST RBX,RBX
JZ 0x001316d2
XOR R14D,R14D
XOR EBP,EBP
LEA R13,[0x143f1c]
XOR R12D,R12D
NOP dword ptr [RAX]
MOV R15,qword ptr [RBX + 0x10]
MOV R8D,dword ptr [RBX + 0x5c]
MOV qword ptr [RBX],RBP
MOV word ptr [RBX + 0x58],R14W
ADD R15,RBP
AND byte ptr [RBX + 0x5a],0xfe
MOV RBP,R15
CMP R8D,0xd
JA 0x0013179a
MOVSXD RAX,dword ptr [R13 + R8*0x4]
ADD RAX,R13
JMP RAX
MOV RDI,qword ptr [RBX + 0x28]
TEST RDI,RDI
JZ 0x00130f94
CALL 0x0012b400
MOV RSI,qword ptr [RSP + 0x38]
MOV RDI,RBX
CALL 0x00136870
MOVSXD RBP,EAX
ADD RBP,R15
MOV RBX,qword ptr [RBX + 0x38]
ADD R12,0x1
TEST RBX,RBX
JNZ 0x00130f58
MOV RAX,R12
MOV dword ptr [RSP + 0x24],0x0
LEA R15,[0x143f54]
IMUL RAX,R12
CMP RAX,R12
CMOVNC R12,RAX
XOR R13D,R13D
MOV qword ptr [RSP + 0x30],R12
NOP dword ptr [RAX]
MOV RBX,qword ptr [RSP + 0x28]
TEST RBX,RBX
JZ 0x001316da
MOV dword ptr [RSP + 0x8],0x0
MOV R14,qword ptr [RBX]
XOR EBP,EBP
NOP dword ptr [RAX + RAX*0x1]
MOVZX EAX,byte ptr [RBX + 0x5a]
LEA R12,[RBP + R14*0x1]
MOV R8,qword ptr [RBX + 0x28]
MOV qword ptr [RBX],R12
MOV RCX,qword ptr [RBX + 0x20]
MOV EDX,EAX
AND EAX,0xfffffffe
AND EDX,0x1
XOR EDX,0x1
OR EAX,EDX
MOV EDX,dword ptr [RBX + 0x5c]
MOV byte ptr [RBX + 0x5a],AL
CMP EDX,0xd
JA 0x00131751
MOV EDI,EDX
MOVSXD RSI,dword ptr [R15 + RDI*0x4]
ADD RSI,R15
JMP RSI
MOV RCX,qword ptr [RBX + 0x20]
MOV RAX,-0x1
SHL RAX,CL
MOV RCX,RAX
NOT RCX
ADD RCX,R15
AND RCX,RAX
MOV RAX,RCX
SUB RAX,R15
MOV R15,RAX
MOV EAX,dword ptr [RBX + 0x60]
TEST EAX,EAX
JZ 0x0013106a
CMP RAX,R15
JC 0x001310c9
MOV R10,qword ptr [RBX + 0x18]
MOV RAX,R15
XOR EDX,EDX
MOV RBP,RCX
DIV R10
MOV qword ptr [RSP + 0x8],R10
TEST RDX,RDX
JZ 0x001310c9
MOV R8D,0x5
MOV RCX,R15
LEA RDX,[0x143b18]
XOR EDI,EDI
LEA RSI,[0x143b50]
CALL 0x0010a6a0
MOV R10,qword ptr [RSP + 0x8]
MOV ESI,dword ptr [RBX + 0x48]
MOV RCX,R15
MOV RDI,qword ptr [RBX + 0x40]
MOV RDX,RAX
XOR EAX,EAX
MOV R8,R10
CALL 0x0011f7a0
MOV RAX,R15
XOR EDX,EDX
DIV qword ptr [RBX + 0x18]
SUB RBP,RDX
MOV RBX,qword ptr [RBX + 0x38]
ADD R14D,0x1
ADD R12,0x1
TEST RBX,RBX
JNZ 0x00130f58
JMP 0x00130fb4
MOV RBP,qword ptr [RBX + 0x20]
IMUL RBP,qword ptr [RBX + 0x18]
ADD R12,0x1
MOV RBX,qword ptr [RBX + 0x38]
ADD RBP,R15
TEST RBX,RBX
JNZ 0x00130f58
JMP 0x00130fb4
MOV RDI,RBX
ADD R12,0x1
CALL 0x00111530
MOV RBX,qword ptr [RBX + 0x38]
MOVSXD RBP,EAX
ADD RBP,R15
TEST RBX,RBX
JNZ 0x00130f58
JMP 0x00130fb4
MOV RDI,RBX
ADD R12,0x1
CALL 0x00115780
MOV RBX,qword ptr [RBX + 0x38]
MOVSXD RBP,EAX
ADD RBP,R15
TEST RBX,RBX
JNZ 0x00130f58
JMP 0x00130fb4
MOV qword ptr [RBX + 0x20],0x1
MOV RBX,qword ptr [RBX + 0x38]
LEA RBP,[R15 + 0x1]
ADD R12,0x1
TEST RBX,RBX
JNZ 0x00130f58
JMP 0x00130fb4
TEST R8,R8
JZ 0x001311e3
MOV RDI,R8
MOV qword ptr [RSP + 0x10],R8
CALL 0x0012c430
MOV R8,qword ptr [RSP + 0x10]
MOV R12,RAX
MOV RDI,R8
CALL 0x0012af60
LEA RCX,[0x1949f0]
MOV R8,qword ptr [RSP + 0x10]
CMP RAX,RCX
JZ 0x001314f0
MOV EDX,0x5
LEA RSI,[0x143ba8]
XOR EDI,EDI
CALL 0x0010a1d0
MOV ESI,dword ptr [RBX + 0x48]
MOV RDI,qword ptr [RBX + 0x40]
MOV RDX,RAX
XOR EAX,EAX
CALL 0x0011f7a0
MOV qword ptr [RBX + 0x28],0x0
MOV RBX,qword ptr [RBX + 0x38]
TEST RBX,RBX
JZ 0x001312f1
MOV R14,qword ptr [RBX]
JMP 0x00131000
TEST R8,R8
JZ 0x00131241
MOV RDI,R8
MOV qword ptr [RSP + 0x18],RCX
MOV qword ptr [RSP + 0x10],R8
CALL 0x0012af60
MOV R8,qword ptr [RSP + 0x10]
MOV RCX,qword ptr [RSP + 0x18]
CMP qword ptr [RAX + 0x28],0x0
JNZ 0x001317c9
MOV RDI,R8
MOV qword ptr [RSP + 0x10],RCX
CALL 0x0012c430
MOV RCX,qword ptr [RSP + 0x10]
ADD RCX,RAX
MOV R8,qword ptr [RBX + 0x38]
TEST R8,R8
JZ 0x00131755
ADD R12,qword ptr [RBX + 0x10]
MOV R9,qword ptr [R8]
CMP R12,RCX
JBE 0x00131400
CMP dword ptr [RSP + 0x20],0x1
JG 0x00131498
MOV R14,R9
MOV RBX,R8
MOV dword ptr [RSP + 0x24],0x1
JMP 0x00131000
MOV R8,-0x1
MOV R10,qword ptr [RBX + 0x10]
SHL R8,CL
MOV RAX,R8
LEA RSI,[R10 + R14*0x1]
LEA RCX,[R12 + R10*0x1]
NOT RAX
LEA RDI,[RSI + RAX*0x1]
LEA R14,[RCX + RAX*0x1]
MOV EAX,dword ptr [RBX + 0x60]
AND RDI,R8
AND R14,R8
MOV R9,RDI
SUB R14,RCX
SUB R9,RSI
TEST EAX,EAX
JNZ 0x00131420
SUB RSI,RDI
LEA R9,[RSI + R14*0x1]
MOV RAX,R9
TEST R9,R9
JS 0x00131450
NOP dword ptr [RAX]
MOV RCX,qword ptr [RBX + 0x38]
TEST RAX,RAX
JNZ 0x0013136f
MOV RBX,RCX
TEST RBX,RBX
JNZ 0x001311f0
TEST RBP,RBP
JNZ 0x00131540
MOV EAX,R13D
AND EAX,0x10
JNZ 0x00131540
LEA EDX,[R13 + 0x1]
AND R13D,0xfffffff0
CMOVNZ EAX,EDX
MOV R13D,EAX
MOV EAX,dword ptr [RSP + 0x8]
TEST EAX,EAX
JZ 0x0013176d
SUB qword ptr [RSP + 0x30],0x1
JNZ 0x00130fe0
MOV RAX,qword ptr [RSP + 0x38]
LEA RSI,[0x143c08]
XOR EDI,EDI
MOV EDX,0x5
MOV RBX,qword ptr [RAX]
CALL 0x0010a1d0
MOV RDI,RAX
MOV RSI,RBX
XOR EAX,EAX
CALL 0x0011f870
MOV RDI,RBX
CALL 0x00111570
MOV RCX,qword ptr [RBX + 0x38]
CDQE
TEST RAX,RAX
JZ 0x001312e5
MOV EDX,dword ptr [RBX + 0x5c]
MOV RBX,RCX
ADD RBP,RAX
CMP EDX,0xb
JZ 0x001313e8
CMP EDX,0x2
JZ 0x001313d8
XOR R13D,R13D
MOV dword ptr [RSP + 0x8],0x1
JMP 0x001311e7
MOV RDI,RBX
CALL 0x00115810
CDQE
JMP 0x001312d8
MOV RDI,R8
CALL 0x0012b400
MOV ESI,dword ptr [RBX + 0x60]
MOV RDI,RAX
CALL 0x00124c80
MOV EDX,EAX
MOV RAX,RDX
SUB RAX,qword ptr [RBX + 0x20]
MOV qword ptr [RBX + 0x20],RDX
JMP 0x001312d8
TEST R13B,0x10
JZ 0x00131382
TEST RBP,RBP
JNZ 0x00131382
NOP dword ptr [RAX + RAX*0x1]
ADD R13D,0x10
MOV dword ptr [RSP + 0x8],0x1
JMP 0x001311e7
ADD R9,RBP
MOV RAX,RCX
SUB RAX,R9
TEST RAX,RAX
JNZ 0x00131470
MOV R14,qword ptr [R8]
MOV RBX,R8
JMP 0x00131000
CMP RAX,R9
JC 0x00131480
SUB RSI,RDI
LEA R9,[RSI + R14*0x1]
CMP RAX,R14
JNC 0x001312c5
MOV R9,RSI
XOR R14D,R14D
MOV RAX,R9
TEST R9,R9
JNS 0x001312d8
NOP word ptr [RAX + RAX*0x1]
TEST R13B,0x10
JZ 0x00131460
TEST R13B,0xe
JNZ 0x00131548
MOV RBX,qword ptr [RBX + 0x38]
ADD RBP,R9
JMP 0x0013137d
MOV EDX,dword ptr [RBX + 0x5c]
MOV RBX,R8
JMP 0x00131375
MOV R9,R14
CMP RAX,R14
JC 0x001311e3
JMP 0x001312c5
MOV EDX,0x5
LEA RSI,[0x143b88]
XOR EDI,EDI
MOV qword ptr [RSP + 0x10],R9
CALL 0x0010a1d0
MOV ESI,dword ptr [RBX + 0x48]
MOV RDI,qword ptr [RBX + 0x40]
MOV RDX,RAX
XOR EAX,EAX
CALL 0x0011f7a0
MOV R9,qword ptr [RSP + 0x10]
MOV qword ptr [RBX + 0x5c],0x2
MOV qword ptr [RBX + 0x20],0x0
SUB R9,R14
MOV qword ptr [RBX + 0x10],R9
MOV RBX,qword ptr [RBX + 0x38]
JMP 0x001311e7
MOV RDI,R8
MOV qword ptr [RSP + 0x10],R8
CALL 0x0012ac00
MOV R8,qword ptr [RSP + 0x10]
TEST EAX,EAX
JNZ 0x001311b7
MOV RDI,R8
CALL 0x0012ac30
TEST EAX,EAX
JZ 0x001311b7
TEST R12,R12
JS 0x001316ba
MOV R8,qword ptr [RBX + 0x38]
MOV RAX,qword ptr [RBX + 0x10]
ADD RAX,R14
SUB RAX,qword ptr [R8]
ADD RAX,R12
JMP 0x00131409
XOR R13D,R13D
JMP 0x00131314
MOV RAX,qword ptr [RSP + 0x38]
MOV qword ptr [RSP + 0x18],R9
MOV RAX,qword ptr [RAX + 0xa8]
MOV RCX,qword ptr [RAX]
LEA RDI,[RCX + 0x30]
MOV qword ptr [RSP + 0x10],RCX
CALL 0x00118840
MOV RCX,qword ptr [RSP + 0x10]
MOV RDX,qword ptr [RBX + 0x18]
MOV R8,RAX
MOV R9,qword ptr [RSP + 0x18]
ADD RDX,qword ptr [RCX + 0x48]
CMP RDX,qword ptr [RCX + 0x40]
MOV qword ptr [RCX + 0x48],RDX
JZ 0x001316ae
MOV RSI,qword ptr [RCX + 0x60]
LEA RAX,[RDX + RSI*0x1]
NOT RSI
MOV RDX,qword ptr [RCX + 0x38]
AND RAX,RSI
MOV RSI,qword ptr [RCX + 0x50]
MOV RDI,RAX
MOV qword ptr [RCX + 0x48],RAX
MOV R11,RSI
SUB RDI,RDX
SUB R11,RDX
CMP RDI,R11
JBE 0x001315bf
MOV qword ptr [RCX + 0x48],RSI
MOV RAX,RSI
MOV qword ptr [RCX + 0x40],RAX
MOVDQU XMM0,xmmword ptr [RBX]
LEA RDI,[R8 + 0x64]
MOV qword ptr [RSP + 0x18],R9
MOVUPS xmmword ptr [R8],XMM0
MOVDQU XMM1,xmmword ptr [RBX + 0x10]
MOV qword ptr [RSP + 0x10],R8
MOVUPS xmmword ptr [R8 + 0x10],XMM1
MOVDQU XMM2,xmmword ptr [RBX + 0x20]
MOVUPS xmmword ptr [R8 + 0x20],XMM2
MOVDQU XMM3,xmmword ptr [RBX + 0x30]
MOVUPS xmmword ptr [R8 + 0x30],XMM3
MOVDQU XMM4,xmmword ptr [RBX + 0x40]
MOVUPS xmmword ptr [R8 + 0x40],XMM4
MOVDQU XMM5,xmmword ptr [RBX + 0x50]
MOVUPS xmmword ptr [R8 + 0x50],XMM5
MOV EAX,dword ptr [RBX + 0x60]
MOV dword ptr [R8 + 0x60],EAX
MOV RAX,qword ptr [RBX + 0x10]
MOV RDX,qword ptr [RBX + 0x18]
LEA RSI,[RBX + RAX*0x1 + 0x64]
CALL 0x0010a490
MOV RCX,qword ptr [RBX + 0x20]
MOV ESI,0x1
MOV R8,qword ptr [RSP + 0x10]
MOV RAX,RSI
ADD R12,qword ptr [RBX + 0x10]
MOV R9,qword ptr [RSP + 0x18]
SHL RAX,CL
ADD R14,R12
MOV dword ptr [R8 + 0x5c],0x1
CQO
MOV qword ptr [R8],R14
IDIV qword ptr [RBX + 0x18]
MOV qword ptr [R8 + 0x10],0x0
MOV qword ptr [R8 + 0x20],RAX
IMUL RAX,qword ptr [R8 + 0x18]
MOV RCX,qword ptr [RBX + 0x20]
SHL RSI,CL
CMP RAX,RSI
MOV RDX,RSI
JZ 0x00131681
MOV qword ptr [R8 + 0x20],RSI
MOV qword ptr [R8 + 0x18],0x1
LEA RAX,[R9 + RDX*0x1]
LEA RDX,[RAX + RBP*0x1]
SUB R14,RDX
MOVZX EDX,byte ptr [R8 + 0x5a]
MOV qword ptr [R8],R14
MOV ECX,EDX
AND EDX,0xfffffffe
AND ECX,0x1
XOR ECX,0x1
OR EDX,ECX
MOV byte ptr [R8 + 0x5a],DL
MOV qword ptr [RBX + 0x38],R8
JMP 0x00131409
OR byte ptr [RCX + 0x80],0x2
JMP 0x0013158d
CMP dword ptr [RSP + 0x20],0x1
JG 0x001316ed
MOV RBX,qword ptr [RBX + 0x38]
MOV dword ptr [RSP + 0x24],0x1
JMP 0x001311e7
MOV dword ptr [RSP + 0x24],0x0
MOV EAX,dword ptr [RSP + 0x24]
ADD RSP,0x48
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
MOV EDX,0x5
LEA RSI,[0x143bd0]
XOR EDI,EDI
CALL 0x0010a1d0
MOV ESI,dword ptr [RBX + 0x48]
MOV RDI,qword ptr [RBX + 0x40]
MOV RDX,RAX
XOR EAX,EAX
CALL 0x0011f5f0
MOV qword ptr [RBX + 0x28],0x0
MOV RBX,qword ptr [RBX + 0x38]
JMP 0x001311e7
MOV RBP,RDI
MOV EDX,0x5
LEA RSI,[0x13d098]
XOR EDI,EDI
CALL 0x0010a1d0
LEA RCX,[0x143d0c]
MOV EDX,0xbf4
MOV RSI,RBP
MOV RDI,RAX
XOR EAX,EAX
CALL 0x0011f870
MOV EBP,EDX
JMP 0x00131725
LEA RDX,[0x143fd0]
MOV ESI,0xb84
LEA RDI,[0x143d0c]
CALL 0x0011f960
MOV ECX,dword ptr [RSP + 0x24]
MOV RAX,qword ptr [RSP + 0x28]
MOV RDX,qword ptr [RAX]
CMP qword ptr [RAX + 0x8],RDX
JZ 0x00131788
MOV qword ptr [RAX + 0x8],RDX
MOV ECX,0x1
MOV RAX,qword ptr [RAX + 0x38]
TEST RAX,RAX
JNZ 0x00131776
MOV dword ptr [RSP + 0x24],ECX
JMP 0x001316da
MOV R15D,R8D
MOV EDX,0x5
LEA RSI,[0x13d098]
XOR EDI,EDI
CALL 0x0010a1d0
LEA RCX,[0x143d0c]
MOV EDX,0xaa0
MOV RSI,R15
MOV RDI,RAX
XOR EAX,EAX
CALL 0x0011f870
LEA RDX,[0x143fd0]
MOV ESI,0xb80
LEA RDI,[0x143d0c]
CALL 0x0011f960
MOV R15,R8
JMP 0x0013179d
(translation_unit "undefined4 FUN_00130f10(ulong *param_1,undefined8 *param_2,int param_3)\n\n{\n  ulong *puVar1;\n  undefined4 uVar2;\n  bool bVar3;\n  int iVar4;\n  uint uVar5;\n  ulong uVar6;\n  ulong uVar7;\n  long lVar8;\n  long lVar9;\n  undefined8 uVar10;\n  ulong *puVar11;\n  undefined8 uVar12;\n  ulong *puVar13;\n  long lVar14;\n  ulong uVar15;\n  ulong uVar16;\n  uint uVar17;\n  uint uVar18;\n  short sVar19;\n  ulong uVar20;\n  undefined4 local_54;\n  ulong local_48;\n  \n  FUN_00129130(param_2,0);\n  if (param_1 == (ulong *)0x0) {\n    return 0;\n  }\n  sVar19 = 0;\n  uVar20 = 0;\n  puVar13 = param_1;\n  lVar14 = 0;\n  do {\n    lVar8 = lVar14;\n    uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);\n    *puVar13 = uVar20;\n    *(short *)(puVar13 + 0xb) = sVar19;\n    uVar20 = puVar13[2] + uVar20;\n    *(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;\n    switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }\n    lVar14 = lVar8 + 1;\n  } while (puVar13 != (ulong *)0x0);\n  local_48 = lVar8 + 1;\n  local_54 = 0;\n  if (local_48 <= local_48 * local_48) {\n    local_48 = local_48 * local_48;\n  }\n  uVar18 = 0;\n  do {\n    if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }\n    bVar3 = false;\n    lVar14 = 0;\n    puVar13 = param_1;\n    uVar20 = *param_1;\nLAB_00131000:\n    uVar7 = lVar14 + uVar20;\n    uVar15 = puVar13[5];\n    *puVar13 = uVar7;\n    uVar6 = puVar13[4];\n    iVar4 = *(int *)((long)puVar13 + 0x5c);\n    *(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;\n    switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }\n  } while( true );\ncode_r0x00131269:\n  local_54 = 1;\n  puVar13 = puVar11;\n  uVar20 = uVar15;\n  goto LAB_00131000;\n}\n\n" (function_definition "undefined4 FUN_00130f10(ulong *param_1,undefined8 *param_2,int param_3)\n\n{\n  ulong *puVar1;\n  undefined4 uVar2;\n  bool bVar3;\n  int iVar4;\n  uint uVar5;\n  ulong uVar6;\n  ulong uVar7;\n  long lVar8;\n  long lVar9;\n  undefined8 uVar10;\n  ulong *puVar11;\n  undefined8 uVar12;\n  ulong *puVar13;\n  long lVar14;\n  ulong uVar15;\n  ulong uVar16;\n  uint uVar17;\n  uint uVar18;\n  short sVar19;\n  ulong uVar20;\n  undefined4 local_54;\n  ulong local_48;\n  \n  FUN_00129130(param_2,0);\n  if (param_1 == (ulong *)0x0) {\n    return 0;\n  }\n  sVar19 = 0;\n  uVar20 = 0;\n  puVar13 = param_1;\n  lVar14 = 0;\n  do {\n    lVar8 = lVar14;\n    uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);\n    *puVar13 = uVar20;\n    *(short *)(puVar13 + 0xb) = sVar19;\n    uVar20 = puVar13[2] + uVar20;\n    *(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;\n    switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }\n    lVar14 = lVar8 + 1;\n  } while (puVar13 != (ulong *)0x0);\n  local_48 = lVar8 + 1;\n  local_54 = 0;\n  if (local_48 <= local_48 * local_48) {\n    local_48 = local_48 * local_48;\n  }\n  uVar18 = 0;\n  do {\n    if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }\n    bVar3 = false;\n    lVar14 = 0;\n    puVar13 = param_1;\n    uVar20 = *param_1;\nLAB_00131000:\n    uVar7 = lVar14 + uVar20;\n    uVar15 = puVar13[5];\n    *puVar13 = uVar7;\n    uVar6 = puVar13[4];\n    iVar4 = *(int *)((long)puVar13 + 0x5c);\n    *(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;\n    switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }\n  } while( true );\ncode_r0x00131269:\n  local_54 = 1;\n  puVar13 = puVar11;\n  uVar20 = uVar15;\n  goto LAB_00131000;\n}" type_identifier (function_declarator "FUN_00130f10(ulong *param_1,undefined8 *param_2,int param_3)" identifier (parameter_list "(ulong *param_1,undefined8 *param_2,int param_3)" ( (parameter_declaration "ulong *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined8 *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "int param_3" primitive_type identifier) ))) (compound_statement "{\n  ulong *puVar1;\n  undefined4 uVar2;\n  bool bVar3;\n  int iVar4;\n  uint uVar5;\n  ulong uVar6;\n  ulong uVar7;\n  long lVar8;\n  long lVar9;\n  undefined8 uVar10;\n  ulong *puVar11;\n  undefined8 uVar12;\n  ulong *puVar13;\n  long lVar14;\n  ulong uVar15;\n  ulong uVar16;\n  uint uVar17;\n  uint uVar18;\n  short sVar19;\n  ulong uVar20;\n  undefined4 local_54;\n  ulong local_48;\n  \n  FUN_00129130(param_2,0);\n  if (param_1 == (ulong *)0x0) {\n    return 0;\n  }\n  sVar19 = 0;\n  uVar20 = 0;\n  puVar13 = param_1;\n  lVar14 = 0;\n  do {\n    lVar8 = lVar14;\n    uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);\n    *puVar13 = uVar20;\n    *(short *)(puVar13 + 0xb) = sVar19;\n    uVar20 = puVar13[2] + uVar20;\n    *(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;\n    switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }\n    lVar14 = lVar8 + 1;\n  } while (puVar13 != (ulong *)0x0);\n  local_48 = lVar8 + 1;\n  local_54 = 0;\n  if (local_48 <= local_48 * local_48) {\n    local_48 = local_48 * local_48;\n  }\n  uVar18 = 0;\n  do {\n    if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }\n    bVar3 = false;\n    lVar14 = 0;\n    puVar13 = param_1;\n    uVar20 = *param_1;\nLAB_00131000:\n    uVar7 = lVar14 + uVar20;\n    uVar15 = puVar13[5];\n    *puVar13 = uVar7;\n    uVar6 = puVar13[4];\n    iVar4 = *(int *)((long)puVar13 + 0x5c);\n    *(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;\n    switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }\n  } while( true );\ncode_r0x00131269:\n  local_54 = 1;\n  puVar13 = puVar11;\n  uVar20 = uVar15;\n  goto LAB_00131000;\n}" { (declaration "ulong *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "bool bVar3;" primitive_type identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "ulong uVar6;" type_identifier identifier ;) (declaration "ulong uVar7;" type_identifier identifier ;) (declaration "long lVar8;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar9;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 uVar10;" type_identifier identifier ;) (declaration "ulong *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "undefined8 uVar12;" type_identifier identifier ;) (declaration "ulong *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "long lVar14;" (sized_type_specifier "long" long) identifier ;) (declaration "ulong uVar15;" type_identifier identifier ;) (declaration "ulong uVar16;" type_identifier identifier ;) (declaration "uint uVar17;" type_identifier identifier ;) (declaration "uint uVar18;" type_identifier identifier ;) (declaration "short sVar19;" (sized_type_specifier "short" short) identifier ;) (declaration "ulong uVar20;" type_identifier identifier ;) (declaration "undefined4 local_54;" type_identifier identifier ;) (declaration "ulong local_48;" type_identifier identifier ;) (expression_statement "FUN_00129130(param_2,0);" (call_expression "FUN_00129130(param_2,0)" identifier (argument_list "(param_2,0)" ( identifier , number_literal ))) ;) (if_statement "if (param_1 == (ulong *)0x0) {\n    return 0;\n  }" if (parenthesized_expression "(param_1 == (ulong *)0x0)" ( (binary_expression "param_1 == (ulong *)0x0" identifier == (cast_expression "(ulong *)0x0" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "sVar19 = 0;" (assignment_expression "sVar19 = 0" identifier = number_literal) ;) (expression_statement "uVar20 = 0;" (assignment_expression "uVar20 = 0" identifier = number_literal) ;) (expression_statement "puVar13 = param_1;" (assignment_expression "puVar13 = param_1" identifier = identifier) ;) (expression_statement "lVar14 = 0;" (assignment_expression "lVar14 = 0" identifier = number_literal) ;) (do_statement "do {\n    lVar8 = lVar14;\n    uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);\n    *puVar13 = uVar20;\n    *(short *)(puVar13 + 0xb) = sVar19;\n    uVar20 = puVar13[2] + uVar20;\n    *(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;\n    switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }\n    lVar14 = lVar8 + 1;\n  } while (puVar13 != (ulong *)0x0);" do (compound_statement "{\n    lVar8 = lVar14;\n    uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);\n    *puVar13 = uVar20;\n    *(short *)(puVar13 + 0xb) = sVar19;\n    uVar20 = puVar13[2] + uVar20;\n    *(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;\n    switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }\n    lVar14 = lVar8 + 1;\n  }" { (expression_statement "lVar8 = lVar14;" (assignment_expression "lVar8 = lVar14" identifier = identifier) ;) (expression_statement "uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);" (assignment_expression "uVar2 = *(undefined4 *)((long)puVar13 + 0x5c)" identifier = (pointer_expression "*(undefined4 *)((long)puVar13 + 0x5c)" * (cast_expression "(undefined4 *)((long)puVar13 + 0x5c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5c)" ( (binary_expression "(long)puVar13 + 0x5c" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (expression_statement "*puVar13 = uVar20;" (assignment_expression "*puVar13 = uVar20" (pointer_expression "*puVar13" * identifier) = identifier) ;) (expression_statement "*(short *)(puVar13 + 0xb) = sVar19;" (assignment_expression "*(short *)(puVar13 + 0xb) = sVar19" (pointer_expression "*(short *)(puVar13 + 0xb)" * (cast_expression "(short *)(puVar13 + 0xb)" ( (type_descriptor "short *" (sized_type_specifier "short" short) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xb)" ( (binary_expression "puVar13 + 0xb" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar20 = puVar13[2] + uVar20;" (assignment_expression "uVar20 = puVar13[2] + uVar20" identifier = (binary_expression "puVar13[2] + uVar20" (subscript_expression "puVar13[2]" identifier [ number_literal ]) + identifier)) ;) (expression_statement "*(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;" (assignment_expression "*(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe" (pointer_expression "*(byte *)((long)puVar13 + 0x5a)" * (cast_expression "(byte *)((long)puVar13 + 0x5a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5a)" ( (binary_expression "(long)puVar13 + 0x5a" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = (binary_expression "*(byte *)((long)puVar13 + 0x5a) & 0xfe" (pointer_expression "*(byte *)((long)puVar13 + 0x5a)" * (cast_expression "(byte *)((long)puVar13 + 0x5a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5a)" ( (binary_expression "(long)puVar13 + 0x5a" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal)) ;) (switch_statement "switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }" switch (parenthesized_expression "(uVar2)" ( identifier )) (compound_statement "{\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }" { (case_statement "case 0:" case number_literal :) (case_statement "case 6:" case number_literal :) (case_statement "case 10:" case number_literal :) (case_statement "default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");" default : (expression_statement "uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" identifier = (call_expression "dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" identifier (argument_list "(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" ( number_literal , (string_literal ""Case value %ld unexpected at line %d of file \"%s\"\n"" " string_content escape_sequence string_content escape_sequence escape_sequence ") , number_literal )))) ;) comment (expression_statement "FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");" (call_expression "FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c")" identifier (argument_list "(uVar12,uVar2,0xaa0,"../../gas/write.c")" ( identifier , identifier , number_literal , (string_literal ""../../gas/write.c"" " string_content ") ))) ;)) (case_statement "case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;" case number_literal : (expression_statement "puVar11 = puVar13 + 4;" (assignment_expression "puVar11 = puVar13 + 4" identifier = (binary_expression "puVar13 + 4" identifier + number_literal)) ;) (expression_statement "puVar1 = puVar13 + 3;" (assignment_expression "puVar1 = puVar13 + 3" identifier = (binary_expression "puVar13 + 3" identifier + number_literal)) ;) (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "uVar20 = *puVar11 * *puVar1 + uVar20;" (assignment_expression "uVar20 = *puVar11 * *puVar1 + uVar20" identifier = (binary_expression "*puVar11 * *puVar1 + uVar20" (binary_expression "*puVar11 * *puVar1" (pointer_expression "*puVar11" * identifier) * (pointer_expression "*puVar1" * identifier)) + identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 2:" case number_literal :) (case_statement "case 3:" case number_literal :) (case_statement "case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }" case number_literal : (expression_statement "uVar6 = -1L << ((byte)puVar13[4] & 0x3f);" (assignment_expression "uVar6 = -1L << ((byte)puVar13[4] & 0x3f)" identifier = (binary_expression "-1L << ((byte)puVar13[4] & 0x3f)" number_literal << (parenthesized_expression "((byte)puVar13[4] & 0x3f)" ( (binary_expression "(byte)puVar13[4] & 0x3f" (cast_expression "(byte)puVar13[4]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "puVar13[4]" identifier [ number_literal ])) & number_literal) )))) ;) (expression_statement "uVar6 = ~uVar6 + uVar20 & uVar6;" (assignment_expression "uVar6 = ~uVar6 + uVar20 & uVar6" identifier = (binary_expression "~uVar6 + uVar20 & uVar6" (binary_expression "~uVar6 + uVar20" (unary_expression "~uVar6" ~ identifier) + identifier) & identifier)) ;) (expression_statement "uVar7 = uVar6 - uVar20;" (assignment_expression "uVar7 = uVar6 - uVar20" identifier = (binary_expression "uVar6 - uVar20" identifier - identifier)) ;) (if_statement "if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }" if (parenthesized_expression "((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0))" ( (binary_expression "(((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)" (parenthesized_expression "(((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc]))" ( (binary_expression "((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])" (parenthesized_expression "((uint)puVar13[0xc] == 0)" ( (binary_expression "(uint)puVar13[0xc] == 0" (cast_expression "(uint)puVar13[0xc]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puVar13[0xc]" identifier [ number_literal ])) == number_literal) )) || (parenthesized_expression "(uVar7 <= (uint)puVar13[0xc])" ( (binary_expression "uVar7 <= (uint)puVar13[0xc]" identifier <= (cast_expression "(uint)puVar13[0xc]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puVar13[0xc]" identifier [ number_literal ]))) ))) )) && (parenthesized_expression "(uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)" ( (comma_expression "uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0" (assignment_expression "uVar15 = puVar13[3]" identifier = (subscript_expression "puVar13[3]" identifier [ number_literal ])) , (comma_expression "uVar20 = uVar6, uVar7 % uVar15 != 0" (assignment_expression "uVar20 = uVar6" identifier = identifier) , (binary_expression "uVar7 % uVar15 != 0" (binary_expression "uVar7 % uVar15" identifier % identifier) != number_literal))) ))) )) (compound_statement "{\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }" { (expression_statement "uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);" (assignment_expression "uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5)" identifier = (call_expression "dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5)" identifier (argument_list "(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5)" ( number_literal , (string_literal ""alignment padding (%lu byte) not a multiple of %ld"" " string_content ") , (string_literal ""alignment padding (%lu bytes) not a multiple of %ld"" " string_content ") , identifier , number_literal )))) ;) (expression_statement "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);" (call_expression "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15)" identifier (argument_list "(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15)" ( (subscript_expression "puVar13[8]" identifier [ number_literal ]) , (cast_expression "(int)puVar13[9]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "puVar13[9]" identifier [ number_literal ])) , identifier , identifier , identifier ))) ;) (expression_statement "uVar20 = uVar6 - uVar7 % puVar13[3];" (assignment_expression "uVar20 = uVar6 - uVar7 % puVar13[3]" identifier = (binary_expression "uVar6 - uVar7 % puVar13[3]" identifier - (binary_expression "uVar7 % puVar13[3]" identifier % (subscript_expression "puVar13[3]" identifier [ number_literal ])))) ;) }))) (case_statement "case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;" case number_literal : (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "sVar19 = sVar19 + 1;" (assignment_expression "sVar19 = sVar19 + 1" identifier = (binary_expression "sVar19 + 1" identifier + number_literal)) ;) (break_statement "break;" break ;)) (case_statement "case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;" case number_literal : (if_statement "if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }" if (parenthesized_expression "(puVar13[5] != 0)" ( (binary_expression "puVar13[5] != 0" (subscript_expression "puVar13[5]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n        FUN_0012b400();\n      }" { (expression_statement "FUN_0012b400();" (call_expression "FUN_0012b400()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "iVar4 = FUN_00136870(puVar13,param_2);" (assignment_expression "iVar4 = FUN_00136870(puVar13,param_2)" identifier = (call_expression "FUN_00136870(puVar13,param_2)" identifier (argument_list "(puVar13,param_2)" ( identifier , identifier )))) ;) (expression_statement "uVar20 = (long)iVar4 + uVar20;" (assignment_expression "uVar20 = (long)iVar4 + uVar20" identifier = (binary_expression "(long)iVar4 + uVar20" (cast_expression "(long)iVar4" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier)) ;)) (case_statement "case 8:" case number_literal :) (case_statement "case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;" case number_literal : (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (break_statement "break;" break ;)) (case_statement "case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;" case number_literal : (expression_statement "puVar13[4] = 1;" (assignment_expression "puVar13[4] = 1" (subscript_expression "puVar13[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "uVar20 = uVar20 + 1;" (assignment_expression "uVar20 = uVar20 + 1" identifier = (binary_expression "uVar20 + 1" identifier + number_literal)) ;) (break_statement "break;" break ;)) (case_statement "case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;" case number_literal : (expression_statement "iVar4 = FUN_00115780(puVar13);" (assignment_expression "iVar4 = FUN_00115780(puVar13)" identifier = (call_expression "FUN_00115780(puVar13)" identifier (argument_list "(puVar13)" ( identifier )))) ;) (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "uVar20 = (long)iVar4 + uVar20;" (assignment_expression "uVar20 = (long)iVar4 + uVar20" identifier = (binary_expression "(long)iVar4 + uVar20" (cast_expression "(long)iVar4" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;" case number_literal : (expression_statement "iVar4 = FUN_00111530(puVar13);" (assignment_expression "iVar4 = FUN_00111530(puVar13)" identifier = (call_expression "FUN_00111530(puVar13)" identifier (argument_list "(puVar13)" ( identifier )))) ;) (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "uVar20 = (long)iVar4 + uVar20;" (assignment_expression "uVar20 = (long)iVar4 + uVar20" identifier = (binary_expression "(long)iVar4 + uVar20" (cast_expression "(long)iVar4" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier)) ;)) })) (expression_statement "lVar14 = lVar8 + 1;" (assignment_expression "lVar14 = lVar8 + 1" identifier = (binary_expression "lVar8 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar13 != (ulong *)0x0)" ( (binary_expression "puVar13 != (ulong *)0x0" identifier != (cast_expression "(ulong *)0x0" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) (expression_statement "local_48 = lVar8 + 1;" (assignment_expression "local_48 = lVar8 + 1" identifier = (binary_expression "lVar8 + 1" identifier + number_literal)) ;) (expression_statement "local_54 = 0;" (assignment_expression "local_54 = 0" identifier = number_literal) ;) (if_statement "if (local_48 <= local_48 * local_48) {\n    local_48 = local_48 * local_48;\n  }" if (parenthesized_expression "(local_48 <= local_48 * local_48)" ( (binary_expression "local_48 <= local_48 * local_48" identifier <= (binary_expression "local_48 * local_48" identifier * identifier)) )) (compound_statement "{\n    local_48 = local_48 * local_48;\n  }" { (expression_statement "local_48 = local_48 * local_48;" (assignment_expression "local_48 = local_48 * local_48" identifier = (binary_expression "local_48 * local_48" identifier * identifier)) ;) })) (expression_statement "uVar18 = 0;" (assignment_expression "uVar18 = 0" identifier = number_literal) ;) (do_statement "do {\n    if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }\n    bVar3 = false;\n    lVar14 = 0;\n    puVar13 = param_1;\n    uVar20 = *param_1;\nLAB_00131000:\n    uVar7 = lVar14 + uVar20;\n    uVar15 = puVar13[5];\n    *puVar13 = uVar7;\n    uVar6 = puVar13[4];\n    iVar4 = *(int *)((long)puVar13 + 0x5c);\n    *(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;\n    switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }\n  } while( true );" do (compound_statement "{\n    if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }\n    bVar3 = false;\n    lVar14 = 0;\n    puVar13 = param_1;\n    uVar20 = *param_1;\nLAB_00131000:\n    uVar7 = lVar14 + uVar20;\n    uVar15 = puVar13[5];\n    *puVar13 = uVar7;\n    uVar6 = puVar13[4];\n    iVar4 = *(int *)((long)puVar13 + 0x5c);\n    *(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;\n    switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }\n  }" { (if_statement "if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }" if (parenthesized_expression "(param_1 == (ulong *)0x0)" ( (binary_expression "param_1 == (ulong *)0x0" identifier == (cast_expression "(ulong *)0x0" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      return local_54;\n    }" { (return_statement "return local_54;" return identifier ;) })) (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" identifier = false) ;) (expression_statement "lVar14 = 0;" (assignment_expression "lVar14 = 0" identifier = number_literal) ;) (expression_statement "puVar13 = param_1;" (assignment_expression "puVar13 = param_1" identifier = identifier) ;) (expression_statement "uVar20 = *param_1;" (assignment_expression "uVar20 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (labeled_statement "LAB_00131000:\n    uVar7 = lVar14 + uVar20;" statement_identifier : (expression_statement "uVar7 = lVar14 + uVar20;" (assignment_expression "uVar7 = lVar14 + uVar20" identifier = (binary_expression "lVar14 + uVar20" identifier + identifier)) ;)) (expression_statement "uVar15 = puVar13[5];" (assignment_expression "uVar15 = puVar13[5]" identifier = (subscript_expression "puVar13[5]" identifier [ number_literal ])) ;) (expression_statement "*puVar13 = uVar7;" (assignment_expression "*puVar13 = uVar7" (pointer_expression "*puVar13" * identifier) = identifier) ;) (expression_statement "uVar6 = puVar13[4];" (assignment_expression "uVar6 = puVar13[4]" identifier = (subscript_expression "puVar13[4]" identifier [ number_literal ])) ;) (expression_statement "iVar4 = *(int *)((long)puVar13 + 0x5c);" (assignment_expression "iVar4 = *(int *)((long)puVar13 + 0x5c)" identifier = (pointer_expression "*(int *)((long)puVar13 + 0x5c)" * (cast_expression "(int *)((long)puVar13 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5c)" ( (binary_expression "(long)puVar13 + 0x5c" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (expression_statement "*(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;" (assignment_expression "*(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1" (pointer_expression "*(byte *)((long)puVar13 + 0x5a)" * (cast_expression "(byte *)((long)puVar13 + 0x5a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5a)" ( (binary_expression "(long)puVar13 + 0x5a" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = (binary_expression "*(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1" (binary_expression "*(byte *)((long)puVar13 + 0x5a) & 0xfe" (pointer_expression "*(byte *)((long)puVar13 + 0x5a)" * (cast_expression "(byte *)((long)puVar13 + 0x5a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5a)" ( (binary_expression "(long)puVar13 + 0x5a" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) | (binary_expression "*(byte *)((long)puVar13 + 0x5a) & 1 ^ 1" (binary_expression "*(byte *)((long)puVar13 + 0x5a) & 1" (pointer_expression "*(byte *)((long)puVar13 + 0x5a)" * (cast_expression "(byte *)((long)puVar13 + 0x5a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5a)" ( (binary_expression "(long)puVar13 + 0x5a" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) ^ number_literal))) ;) (switch_statement "switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }" switch (parenthesized_expression "(iVar4)" ( identifier )) (compound_statement "{\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }" { (case_statement "case 0:" case number_literal :) (case_statement "case 6:" case number_literal :) (case_statement "case 10:" case number_literal :) (case_statement "default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");" default : (expression_statement "uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" identifier = (call_expression "dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" identifier (argument_list "(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" ( number_literal , (string_literal ""Case value %ld unexpected at line %d of file \"%s\"\n"" " string_content escape_sequence string_content escape_sequence escape_sequence ") , number_literal )))) ;) comment (expression_statement "FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");" (call_expression "FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c")" identifier (argument_list "(uVar12,iVar4,0xbf4,"../../gas/write.c")" ( identifier , identifier , number_literal , (string_literal ""../../gas/write.c"" " string_content ") ))) ;)) (case_statement "case 2:" case number_literal :) (case_statement "case 3:" case number_literal :) (case_statement "case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;" case number_literal : (expression_statement "uVar6 = -1L << ((byte)uVar6 & 0x3f);" (assignment_expression "uVar6 = -1L << ((byte)uVar6 & 0x3f)" identifier = (binary_expression "-1L << ((byte)uVar6 & 0x3f)" number_literal << (parenthesized_expression "((byte)uVar6 & 0x3f)" ( (binary_expression "(byte)uVar6 & 0x3f" (cast_expression "(byte)uVar6" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "lVar8 = puVar13[2] + uVar20;" (assignment_expression "lVar8 = puVar13[2] + uVar20" identifier = (binary_expression "puVar13[2] + uVar20" (subscript_expression "puVar13[2]" identifier [ number_literal ]) + identifier)) ;) (expression_statement "lVar9 = uVar7 + puVar13[2];" (assignment_expression "lVar9 = uVar7 + puVar13[2]" identifier = (binary_expression "uVar7 + puVar13[2]" identifier + (subscript_expression "puVar13[2]" identifier [ number_literal ]))) ;) (expression_statement "uVar15 = (ulong)(uint)puVar13[0xc];" (assignment_expression "uVar15 = (ulong)(uint)puVar13[0xc]" identifier = (cast_expression "(ulong)(uint)puVar13[0xc]" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(uint)puVar13[0xc]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puVar13[0xc]" identifier [ number_literal ])))) ;) (expression_statement "uVar16 = lVar8 + ~uVar6 & uVar6;" (assignment_expression "uVar16 = lVar8 + ~uVar6 & uVar6" identifier = (binary_expression "lVar8 + ~uVar6 & uVar6" (binary_expression "lVar8 + ~uVar6" identifier + (unary_expression "~uVar6" ~ identifier)) & identifier)) ;) (expression_statement "uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;" (assignment_expression "uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9" identifier = (binary_expression "(lVar9 + ~uVar6 & uVar6) - lVar9" (parenthesized_expression "(lVar9 + ~uVar6 & uVar6)" ( (binary_expression "lVar9 + ~uVar6 & uVar6" (binary_expression "lVar9 + ~uVar6" identifier + (unary_expression "~uVar6" ~ identifier)) & identifier) )) - identifier)) ;) (if_statement "if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }" if (parenthesized_expression "((uint)puVar13[0xc] == 0)" ( (binary_expression "(uint)puVar13[0xc] == 0" (cast_expression "(uint)puVar13[0xc]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puVar13[0xc]" identifier [ number_literal ])) == number_literal) )) (compound_statement "{\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }" { (expression_statement "uVar6 = (lVar8 - uVar16) + uVar20;" (assignment_expression "uVar6 = (lVar8 - uVar16) + uVar20" identifier = (binary_expression "(lVar8 - uVar16) + uVar20" (parenthesized_expression "(lVar8 - uVar16)" ( (binary_expression "lVar8 - uVar16" identifier - identifier) )) + identifier)) ;) }) (else_clause "else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }" else (if_statement "if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }" if (parenthesized_expression "(uVar15 < uVar16 - lVar8)" ( (binary_expression "uVar15 < uVar16 - lVar8" identifier < (binary_expression "uVar16 - lVar8" identifier - identifier)) )) (compound_statement "{\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }" { (expression_statement "uVar6 = uVar20;" (assignment_expression "uVar6 = uVar20" identifier = identifier) ;) (if_statement "if (uVar15 < uVar20) goto switchD_00131039_caseD_1;" if (parenthesized_expression "(uVar15 < uVar20)" ( (binary_expression "uVar15 < uVar20" identifier < identifier) )) (goto_statement "goto switchD_00131039_caseD_1;" goto statement_identifier ;)) }) (else_clause "else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }" else (compound_statement "{\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }" { (expression_statement "uVar6 = (lVar8 - uVar16) + uVar20;" (assignment_expression "uVar6 = (lVar8 - uVar16) + uVar20" identifier = (binary_expression "(lVar8 - uVar16) + uVar20" (parenthesized_expression "(lVar8 - uVar16)" ( (binary_expression "lVar8 - uVar16" identifier - identifier) )) + identifier)) ;) (if_statement "if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }" if (parenthesized_expression "(uVar15 < uVar20)" ( (binary_expression "uVar15 < uVar20" identifier < identifier) )) (compound_statement "{\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }" { (expression_statement "uVar20 = 0;" (assignment_expression "uVar20 = 0" identifier = number_literal) ;) (expression_statement "uVar6 = lVar8 - uVar16;" (assignment_expression "uVar6 = lVar8 - uVar16" identifier = (binary_expression "lVar8 - uVar16" identifier - identifier)) ;) })) }))))) (if_statement "if (-1 < (long)uVar6) goto LAB_001312d8;" if (parenthesized_expression "(-1 < (long)uVar6)" ( (binary_expression "-1 < (long)uVar6" number_literal < (cast_expression "(long)uVar6" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )) (goto_statement "goto LAB_001312d8;" goto statement_identifier ;)) (if_statement "if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }" if (parenthesized_expression "(((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0))" ( (binary_expression "((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)" (parenthesized_expression "((uVar18 & 0x10) != 0)" ( (binary_expression "(uVar18 & 0x10) != 0" (parenthesized_expression "(uVar18 & 0x10)" ( (binary_expression "uVar18 & 0x10" identifier & number_literal) )) != number_literal) )) && (parenthesized_expression "((uVar18 & 0xe) != 0)" ( (binary_expression "(uVar18 & 0xe) != 0" (parenthesized_expression "(uVar18 & 0xe)" ( (binary_expression "uVar18 & 0xe" identifier & number_literal) )) != number_literal) ))) )) (compound_statement "{\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }" { (expression_statement "lVar8 = *(long *)param_2[0x15];" (assignment_expression "lVar8 = *(long *)param_2[0x15]" identifier = (pointer_expression "*(long *)param_2[0x15]" * (cast_expression "(long *)param_2[0x15]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[0x15]" identifier [ number_literal ])))) ;) (expression_statement "puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);" (assignment_expression "puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30)" identifier = (cast_expression "(ulong *)FUN_00118840(lVar8 + 0x30)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00118840(lVar8 + 0x30)" identifier (argument_list "(lVar8 + 0x30)" ( (binary_expression "lVar8 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);" (assignment_expression "lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48)" identifier = (binary_expression "puVar13[3] + *(long *)(lVar8 + 0x48)" (subscript_expression "puVar13[3]" identifier [ number_literal ]) + (pointer_expression "*(long *)(lVar8 + 0x48)" * (cast_expression "(long *)(lVar8 + 0x48)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x48)" ( (binary_expression "lVar8 + 0x48" identifier + number_literal) )))))) ;) (expression_statement "*(long *)(lVar8 + 0x48) = lVar9;" (assignment_expression "*(long *)(lVar8 + 0x48) = lVar9" (pointer_expression "*(long *)(lVar8 + 0x48)" * (cast_expression "(long *)(lVar8 + 0x48)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x48)" ( (binary_expression "lVar8 + 0x48" identifier + number_literal) )))) = identifier) ;) (if_statement "if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }" if (parenthesized_expression "(lVar9 == *(long *)(lVar8 + 0x40))" ( (binary_expression "lVar9 == *(long *)(lVar8 + 0x40)" identifier == (pointer_expression "*(long *)(lVar8 + 0x40)" * (cast_expression "(long *)(lVar8 + 0x40)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x40)" ( (binary_expression "lVar8 + 0x40" identifier + number_literal) ))))) )) (compound_statement "{\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }" { (expression_statement "*(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;" (assignment_expression "*(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2" (pointer_expression "*(byte *)(lVar8 + 0x80)" * (cast_expression "(byte *)(lVar8 + 0x80)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x80)" ( (binary_expression "lVar8 + 0x80" identifier + number_literal) )))) = (binary_expression "*(byte *)(lVar8 + 0x80) | 2" (pointer_expression "*(byte *)(lVar8 + 0x80)" * (cast_expression "(byte *)(lVar8 + 0x80)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x80)" ( (binary_expression "lVar8 + 0x80" identifier + number_literal) )))) | number_literal)) ;) })) (expression_statement "uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);" (assignment_expression "uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60)" identifier = (binary_expression "lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60)" (binary_expression "lVar9 + *(ulong *)(lVar8 + 0x60)" identifier + (pointer_expression "*(ulong *)(lVar8 + 0x60)" * (cast_expression "(ulong *)(lVar8 + 0x60)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x60)" ( (binary_expression "lVar8 + 0x60" identifier + number_literal) ))))) & (unary_expression "~*(ulong *)(lVar8 + 0x60)" ~ (pointer_expression "*(ulong *)(lVar8 + 0x60)" * (cast_expression "(ulong *)(lVar8 + 0x60)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x60)" ( (binary_expression "lVar8 + 0x60" identifier + number_literal) ))))))) ;) (expression_statement "uVar15 = *(ulong *)(lVar8 + 0x50);" (assignment_expression "uVar15 = *(ulong *)(lVar8 + 0x50)" identifier = (pointer_expression "*(ulong *)(lVar8 + 0x50)" * (cast_expression "(ulong *)(lVar8 + 0x50)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x50)" ( (binary_expression "lVar8 + 0x50" identifier + number_literal) ))))) ;) (expression_statement "*(ulong *)(lVar8 + 0x48) = uVar16;" (assignment_expression "*(ulong *)(lVar8 + 0x48) = uVar16" (pointer_expression "*(ulong *)(lVar8 + 0x48)" * (cast_expression "(ulong *)(lVar8 + 0x48)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x48)" ( (binary_expression "lVar8 + 0x48" identifier + number_literal) )))) = identifier) ;) (if_statement "if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }" if (parenthesized_expression "(uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38))" ( (binary_expression "uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)" (binary_expression "uVar15 - *(long *)(lVar8 + 0x38)" identifier - (pointer_expression "*(long *)(lVar8 + 0x38)" * (cast_expression "(long *)(lVar8 + 0x38)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x38)" ( (binary_expression "lVar8 + 0x38" identifier + number_literal) ))))) < (binary_expression "uVar16 - *(long *)(lVar8 + 0x38)" identifier - (pointer_expression "*(long *)(lVar8 + 0x38)" * (cast_expression "(long *)(lVar8 + 0x38)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x38)" ( (binary_expression "lVar8 + 0x38" identifier + number_literal) )))))) )) (compound_statement "{\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }" { (expression_statement "*(ulong *)(lVar8 + 0x48) = uVar15;" (assignment_expression "*(ulong *)(lVar8 + 0x48) = uVar15" (pointer_expression "*(ulong *)(lVar8 + 0x48)" * (cast_expression "(ulong *)(lVar8 + 0x48)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x48)" ( (binary_expression "lVar8 + 0x48" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar16 = uVar15;" (assignment_expression "uVar16 = uVar15" identifier = identifier) ;) })) (expression_statement "*(ulong *)(lVar8 + 0x40) = uVar16;" (assignment_expression "*(ulong *)(lVar8 + 0x40) = uVar16" (pointer_expression "*(ulong *)(lVar8 + 0x40)" * (cast_expression "(ulong *)(lVar8 + 0x40)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x40)" ( (binary_expression "lVar8 + 0x40" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar15 = puVar13[1];" (assignment_expression "uVar15 = puVar13[1]" identifier = (subscript_expression "puVar13[1]" identifier [ number_literal ])) ;) (expression_statement "*puVar11 = *puVar13;" (assignment_expression "*puVar11 = *puVar13" (pointer_expression "*puVar11" * identifier) = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "puVar11[1] = uVar15;" (assignment_expression "puVar11[1] = uVar15" (subscript_expression "puVar11[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar15 = puVar13[3];" (assignment_expression "uVar15 = puVar13[3]" identifier = (subscript_expression "puVar13[3]" identifier [ number_literal ])) ;) (expression_statement "puVar11[2] = puVar13[2];" (assignment_expression "puVar11[2] = puVar13[2]" (subscript_expression "puVar11[2]" identifier [ number_literal ]) = (subscript_expression "puVar13[2]" identifier [ number_literal ])) ;) (expression_statement "puVar11[3] = uVar15;" (assignment_expression "puVar11[3] = uVar15" (subscript_expression "puVar11[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar15 = puVar13[5];" (assignment_expression "uVar15 = puVar13[5]" identifier = (subscript_expression "puVar13[5]" identifier [ number_literal ])) ;) (expression_statement "puVar11[4] = puVar13[4];" (assignment_expression "puVar11[4] = puVar13[4]" (subscript_expression "puVar11[4]" identifier [ number_literal ]) = (subscript_expression "puVar13[4]" identifier [ number_literal ])) ;) (expression_statement "puVar11[5] = uVar15;" (assignment_expression "puVar11[5] = uVar15" (subscript_expression "puVar11[5]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar15 = puVar13[7];" (assignment_expression "uVar15 = puVar13[7]" identifier = (subscript_expression "puVar13[7]" identifier [ number_literal ])) ;) (expression_statement "puVar11[6] = puVar13[6];" (assignment_expression "puVar11[6] = puVar13[6]" (subscript_expression "puVar11[6]" identifier [ number_literal ]) = (subscript_expression "puVar13[6]" identifier [ number_literal ])) ;) (expression_statement "puVar11[7] = uVar15;" (assignment_expression "puVar11[7] = uVar15" (subscript_expression "puVar11[7]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar15 = puVar13[9];" (assignment_expression "uVar15 = puVar13[9]" identifier = (subscript_expression "puVar13[9]" identifier [ number_literal ])) ;) (expression_statement "puVar11[8] = puVar13[8];" (assignment_expression "puVar11[8] = puVar13[8]" (subscript_expression "puVar11[8]" identifier [ number_literal ]) = (subscript_expression "puVar13[8]" identifier [ number_literal ])) ;) (expression_statement "puVar11[9] = uVar15;" (assignment_expression "puVar11[9] = uVar15" (subscript_expression "puVar11[9]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar15 = puVar13[0xb];" (assignment_expression "uVar15 = puVar13[0xb]" identifier = (subscript_expression "puVar13[0xb]" identifier [ number_literal ])) ;) (expression_statement "puVar11[10] = puVar13[10];" (assignment_expression "puVar11[10] = puVar13[10]" (subscript_expression "puVar11[10]" identifier [ number_literal ]) = (subscript_expression "puVar13[10]" identifier [ number_literal ])) ;) (expression_statement "puVar11[0xb] = uVar15;" (assignment_expression "puVar11[0xb] = uVar15" (subscript_expression "puVar11[0xb]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(int *)(puVar11 + 0xc) = (int)puVar13[0xc];" (assignment_expression "*(int *)(puVar11 + 0xc) = (int)puVar13[0xc]" (pointer_expression "*(int *)(puVar11 + 0xc)" * (cast_expression "(int *)(puVar11 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0xc)" ( (binary_expression "puVar11 + 0xc" identifier + number_literal) )))) = (cast_expression "(int)puVar13[0xc]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "puVar13[0xc]" identifier [ number_literal ]))) ;) (expression_statement "memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);" (call_expression "memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3])" identifier (argument_list "((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3])" ( (cast_expression "(void *)((long)puVar11 + 100)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar11 + 100)" ( (binary_expression "(long)puVar11 + 100" (cast_expression "(long)puVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))) , (cast_expression "(void *)((long)puVar13 + puVar13[2] + 100)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + puVar13[2] + 100)" ( (binary_expression "(long)puVar13 + puVar13[2] + 100" (binary_expression "(long)puVar13 + puVar13[2]" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (subscript_expression "puVar13[2]" identifier [ number_literal ])) + number_literal) ))) , (subscript_expression "puVar13[3]" identifier [ number_literal ]) ))) ;) (expression_statement "uVar15 = puVar13[4];" (assignment_expression "uVar15 = puVar13[4]" identifier = (subscript_expression "puVar13[4]" identifier [ number_literal ])) ;) (expression_statement "uVar20 = uVar20 + uVar7 + puVar13[2];" (assignment_expression "uVar20 = uVar20 + uVar7 + puVar13[2]" identifier = (binary_expression "uVar20 + uVar7 + puVar13[2]" (binary_expression "uVar20 + uVar7" identifier + identifier) + (subscript_expression "puVar13[2]" identifier [ number_literal ]))) ;) (expression_statement "*(undefined4 *)((long)puVar11 + 0x5c) = 1;" (assignment_expression "*(undefined4 *)((long)puVar11 + 0x5c) = 1" (pointer_expression "*(undefined4 *)((long)puVar11 + 0x5c)" * (cast_expression "(undefined4 *)((long)puVar11 + 0x5c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar11 + 0x5c)" ( (binary_expression "(long)puVar11 + 0x5c" (cast_expression "(long)puVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*puVar11 = uVar20;" (assignment_expression "*puVar11 = uVar20" (pointer_expression "*puVar11" * identifier) = identifier) ;) (expression_statement "uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];" (assignment_expression "uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3]" identifier = (binary_expression "(1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3]" (parenthesized_expression "(1L << ((byte)uVar15 & 0x3f))" ( (binary_expression "1L << ((byte)uVar15 & 0x3f)" number_literal << (parenthesized_expression "((byte)uVar15 & 0x3f)" ( (binary_expression "(byte)uVar15 & 0x3f" (cast_expression "(byte)uVar15" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))) )) / (cast_expression "(long)puVar13[3]" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (subscript_expression "puVar13[3]" identifier [ number_literal ])))) ;) (expression_statement "puVar11[2] = 0;" (assignment_expression "puVar11[2] = 0" (subscript_expression "puVar11[2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar11[4] = uVar7;" (assignment_expression "puVar11[4] = uVar7" (subscript_expression "puVar11[4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar15 = 1L << ((byte)puVar13[4] & 0x3f);" (assignment_expression "uVar15 = 1L << ((byte)puVar13[4] & 0x3f)" identifier = (binary_expression "1L << ((byte)puVar13[4] & 0x3f)" number_literal << (parenthesized_expression "((byte)puVar13[4] & 0x3f)" ( (binary_expression "(byte)puVar13[4] & 0x3f" (cast_expression "(byte)puVar13[4]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "puVar13[4]" identifier [ number_literal ])) & number_literal) )))) ;) (if_statement "if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }" if (parenthesized_expression "(uVar7 * puVar11[3] - uVar15 != 0)" ( (binary_expression "uVar7 * puVar11[3] - uVar15 != 0" (binary_expression "uVar7 * puVar11[3] - uVar15" (binary_expression "uVar7 * puVar11[3]" identifier * (subscript_expression "puVar11[3]" identifier [ number_literal ])) - identifier) != number_literal) )) (compound_statement "{\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }" { (expression_statement "puVar11[4] = uVar15;" (assignment_expression "puVar11[4] = uVar15" (subscript_expression "puVar11[4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar11[3] = 1;" (assignment_expression "puVar11[3] = 1" (subscript_expression "puVar11[3]" identifier [ number_literal ]) = number_literal) ;) })) (expression_statement "uVar6 = uVar6 + uVar15;" (assignment_expression "uVar6 = uVar6 + uVar15" identifier = (binary_expression "uVar6 + uVar15" identifier + identifier)) ;) (expression_statement "*puVar11 = uVar20 - (uVar6 + lVar14);" (assignment_expression "*puVar11 = uVar20 - (uVar6 + lVar14)" (pointer_expression "*puVar11" * identifier) = (binary_expression "uVar20 - (uVar6 + lVar14)" identifier - (parenthesized_expression "(uVar6 + lVar14)" ( (binary_expression "uVar6 + lVar14" identifier + identifier) )))) ;) (expression_statement "*(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;" (assignment_expression "*(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1" (pointer_expression "*(byte *)((long)puVar11 + 0x5a)" * (cast_expression "(byte *)((long)puVar11 + 0x5a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar11 + 0x5a)" ( (binary_expression "(long)puVar11 + 0x5a" (cast_expression "(long)puVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = (binary_expression "*(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1" (binary_expression "*(byte *)((long)puVar11 + 0x5a) & 0xfe" (pointer_expression "*(byte *)((long)puVar11 + 0x5a)" * (cast_expression "(byte *)((long)puVar11 + 0x5a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar11 + 0x5a)" ( (binary_expression "(long)puVar11 + 0x5a" (cast_expression "(long)puVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) | (binary_expression "*(byte *)((long)puVar11 + 0x5a) & 1 ^ 1" (binary_expression "*(byte *)((long)puVar11 + 0x5a) & 1" (pointer_expression "*(byte *)((long)puVar11 + 0x5a)" * (cast_expression "(byte *)((long)puVar11 + 0x5a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar11 + 0x5a)" ( (binary_expression "(long)puVar11 + 0x5a" (cast_expression "(long)puVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) ^ number_literal))) ;) (expression_statement "puVar13[7] = (ulong)puVar11;" (assignment_expression "puVar13[7] = (ulong)puVar11" (subscript_expression "puVar13[7]" identifier [ number_literal ]) = (cast_expression "(ulong)puVar11" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (goto_statement "goto LAB_00131409;" goto statement_identifier ;) })) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "lVar14 = lVar14 + uVar6;" (assignment_expression "lVar14 = lVar14 + uVar6" identifier = (binary_expression "lVar14 + uVar6" identifier + identifier)) ;) (goto_statement "goto LAB_0013137d;" goto statement_identifier ;)) (case_statement "case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;" case number_literal : (if_statement "if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }" if (parenthesized_expression "(uVar15 != 0)" ( (binary_expression "uVar15 != 0" identifier != number_literal) )) (compound_statement "{\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }" { (expression_statement "lVar8 = FUN_0012af60(uVar15);" (assignment_expression "lVar8 = FUN_0012af60(uVar15)" identifier = (call_expression "FUN_0012af60(uVar15)" identifier (argument_list "(uVar15)" ( identifier )))) ;) (if_statement "if (*(long *)(lVar8 + 0x28) != 0) {\n                    /* WARNING: Subroutine does not return */\n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }" if (parenthesized_expression "(*(long *)(lVar8 + 0x28) != 0)" ( (binary_expression "*(long *)(lVar8 + 0x28) != 0" (pointer_expression "*(long *)(lVar8 + 0x28)" * (cast_expression "(long *)(lVar8 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x28)" ( (binary_expression "lVar8 + 0x28" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }" { comment (expression_statement "FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");" (call_expression "FUN_0011f960("../../gas/write.c",0xb80,"relax_segment")" identifier (argument_list "("../../gas/write.c",0xb80,"relax_segment")" ( (string_literal ""../../gas/write.c"" " string_content ") , number_literal , (string_literal ""relax_segment"" " string_content ") ))) ;) })) (expression_statement "lVar8 = thunk_FUN_0012c290(uVar15);" (assignment_expression "lVar8 = thunk_FUN_0012c290(uVar15)" identifier = (call_expression "thunk_FUN_0012c290(uVar15)" identifier (argument_list "(uVar15)" ( identifier )))) ;) (expression_statement "uVar6 = uVar6 + lVar8;" (assignment_expression "uVar6 = uVar6 + lVar8" identifier = (binary_expression "uVar6 + lVar8" identifier + identifier)) ;) })) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (if_statement "if (puVar11 == (ulong *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }" if (parenthesized_expression "(puVar11 == (ulong *)0x0)" ( (binary_expression "puVar11 == (ulong *)0x0" identifier == (cast_expression "(ulong *)0x0" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }" { comment (expression_statement "FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");" (call_expression "FUN_0011f960("../../gas/write.c",0xb84,"relax_segment")" identifier (argument_list "("../../gas/write.c",0xb84,"relax_segment")" ( (string_literal ""../../gas/write.c"" " string_content ") , number_literal , (string_literal ""relax_segment"" " string_content ") ))) ;) })) (expression_statement "uVar15 = *puVar11;" (assignment_expression "uVar15 = *puVar11" identifier = (pointer_expression "*puVar11" * identifier)) ;) (if_statement "if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }" if (parenthesized_expression "(uVar6 < uVar7 + puVar13[2])" ( (binary_expression "uVar6 < uVar7 + puVar13[2]" identifier < (binary_expression "uVar7 + puVar13[2]" identifier + (subscript_expression "puVar13[2]" identifier [ number_literal ]))) )) (compound_statement "{\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }" { (if_statement "if (param_3 < 2) goto code_r0x00131269;" if (parenthesized_expression "(param_3 < 2)" ( (binary_expression "param_3 < 2" identifier < number_literal) )) (goto_statement "goto code_r0x00131269;" goto statement_identifier ;)) (expression_statement "uVar12 = dcgettext(0,"attempt to move .org backwards",5);" (assignment_expression "uVar12 = dcgettext(0,"attempt to move .org backwards",5)" identifier = (call_expression "dcgettext(0,"attempt to move .org backwards",5)" identifier (argument_list "(0,"attempt to move .org backwards",5)" ( number_literal , (string_literal ""attempt to move .org backwards"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);" (call_expression "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12)" identifier (argument_list "(puVar13[8],(int)puVar13[9],uVar12)" ( (subscript_expression "puVar13[8]" identifier [ number_literal ]) , (cast_expression "(int)puVar13[9]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "puVar13[9]" identifier [ number_literal ])) , identifier ))) ;) (expression_statement "*(undefined8 *)((long)puVar13 + 0x5c) = 2;" (assignment_expression "*(undefined8 *)((long)puVar13 + 0x5c) = 2" (pointer_expression "*(undefined8 *)((long)puVar13 + 0x5c)" * (cast_expression "(undefined8 *)((long)puVar13 + 0x5c)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5c)" ( (binary_expression "(long)puVar13 + 0x5c" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "puVar13[4] = 0;" (assignment_expression "puVar13[4] = 0" (subscript_expression "puVar13[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar13[2] = uVar15 - uVar20;" (assignment_expression "puVar13[2] = uVar15 - uVar20" (subscript_expression "puVar13[2]" identifier [ number_literal ]) = (binary_expression "uVar15 - uVar20" identifier - identifier)) ;) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (goto_statement "goto LAB_001311e7;" goto statement_identifier ;) })) (expression_statement "uVar6 = uVar6 - (uVar15 + lVar14);" (assignment_expression "uVar6 = uVar6 - (uVar15 + lVar14)" identifier = (binary_expression "uVar6 - (uVar15 + lVar14)" identifier - (parenthesized_expression "(uVar15 + lVar14)" ( (binary_expression "uVar15 + lVar14" identifier + identifier) )))) ;) (labeled_statement "LAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }" statement_identifier : (if_statement "if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }" if (parenthesized_expression "(uVar6 != 0)" ( (binary_expression "uVar6 != 0" identifier != number_literal) )) (compound_statement "{\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }" { (expression_statement "iVar4 = *(int *)((long)puVar13 + 0x5c);" (assignment_expression "iVar4 = *(int *)((long)puVar13 + 0x5c)" identifier = (pointer_expression "*(int *)((long)puVar13 + 0x5c)" * (cast_expression "(int *)((long)puVar13 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5c)" ( (binary_expression "(long)puVar13 + 0x5c" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (goto_statement "goto LAB_00131375;" goto statement_identifier ;) }))) (expression_statement "puVar13 = puVar11;" (assignment_expression "puVar13 = puVar11" identifier = identifier) ;) (expression_statement "uVar20 = *puVar11;" (assignment_expression "uVar20 = *puVar11" identifier = (pointer_expression "*puVar11" * identifier)) ;) (goto_statement "goto LAB_00131000;" goto statement_identifier ;)) (case_statement "case 8:" case number_literal :) (case_statement "case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }" case number_literal : (if_statement "if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }" if (parenthesized_expression "(uVar15 != 0)" ( (binary_expression "uVar15 != 0" identifier != number_literal) )) (compound_statement "{\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }" { (expression_statement "lVar8 = thunk_FUN_0012c290(uVar15);" (assignment_expression "lVar8 = thunk_FUN_0012c290(uVar15)" identifier = (call_expression "thunk_FUN_0012c290(uVar15)" identifier (argument_list "(uVar15)" ( identifier )))) ;) (expression_statement "lVar9 = FUN_0012af60(uVar15);" (assignment_expression "lVar9 = FUN_0012af60(uVar15)" identifier = (call_expression "FUN_0012af60(uVar15)" identifier (argument_list "(uVar15)" ( identifier )))) ;) (if_statement "if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }" if (parenthesized_expression "(((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0))" ( (binary_expression "((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)" (parenthesized_expression "((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0))" ( (binary_expression "(lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)" (parenthesized_expression "(lVar9 == 0x1949f0)" ( (binary_expression "lVar9 == 0x1949f0" identifier == number_literal) )) && (parenthesized_expression "(iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)" ( (comma_expression "iVar4 = FUN_0012ac00(uVar15), iVar4 == 0" (assignment_expression "iVar4 = FUN_0012ac00(uVar15)" identifier = (call_expression "FUN_0012ac00(uVar15)" identifier (argument_list "(uVar15)" ( identifier )))) , (binary_expression "iVar4 == 0" identifier == number_literal)) ))) )) && (parenthesized_expression "(iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)" ( (comma_expression "iVar4 = FUN_0012ac30(uVar15), iVar4 != 0" (assignment_expression "iVar4 = FUN_0012ac30(uVar15)" identifier = (call_expression "FUN_0012ac30(uVar15)" identifier (argument_list "(uVar15)" ( identifier )))) , (binary_expression "iVar4 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }" { (if_statement "if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }" if (parenthesized_expression "(lVar8 < 0)" ( (binary_expression "lVar8 < 0" identifier < number_literal) )) (compound_statement "{\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }" { (if_statement "if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }" if (parenthesized_expression "(param_3 < 2)" ( (binary_expression "param_3 < 2" identifier < number_literal) )) (compound_statement "{\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }" { (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "local_54 = 1;" (assignment_expression "local_54 = 1" identifier = number_literal) ;) }) (else_clause "else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }" else (compound_statement "{\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }" { (expression_statement "uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);" (assignment_expression "uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5)" identifier = (call_expression "dcgettext(0,".space, .nops or .fill with negative value, ignored",5)" identifier (argument_list "(0,".space, .nops or .fill with negative value, ignored",5)" ( number_literal , (string_literal "".space, .nops or .fill with negative value, ignored"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);" (call_expression "FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12)" identifier (argument_list "(puVar13[8],(int)puVar13[9],uVar12)" ( (subscript_expression "puVar13[8]" identifier [ number_literal ]) , (cast_expression "(int)puVar13[9]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "puVar13[9]" identifier [ number_literal ])) , identifier ))) ;) (expression_statement "puVar13[5] = 0;" (assignment_expression "puVar13[5] = 0" (subscript_expression "puVar13[5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) }))) (goto_statement "goto LAB_001311e7;" goto statement_identifier ;) })) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;" (assignment_expression "uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8" identifier = (binary_expression "((puVar13[2] + uVar20) - *puVar11) + lVar8" (parenthesized_expression "((puVar13[2] + uVar20) - *puVar11)" ( (binary_expression "(puVar13[2] + uVar20) - *puVar11" (parenthesized_expression "(puVar13[2] + uVar20)" ( (binary_expression "puVar13[2] + uVar20" (subscript_expression "puVar13[2]" identifier [ number_literal ]) + identifier) )) - (pointer_expression "*puVar11" * identifier)) )) + identifier)) ;) (goto_statement "goto LAB_00131409;" goto statement_identifier ;) })) (expression_statement "uVar12 = dcgettext(0,".space specifies non-absolute value",5);" (assignment_expression "uVar12 = dcgettext(0,".space specifies non-absolute value",5)" identifier = (call_expression "dcgettext(0,".space specifies non-absolute value",5)" identifier (argument_list "(0,".space specifies non-absolute value",5)" ( number_literal , (string_literal "".space specifies non-absolute value"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);" (call_expression "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12)" identifier (argument_list "(puVar13[8],(int)puVar13[9],uVar12)" ( (subscript_expression "puVar13[8]" identifier [ number_literal ]) , (cast_expression "(int)puVar13[9]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "puVar13[9]" identifier [ number_literal ])) , identifier ))) ;) (expression_statement "puVar13[5] = 0;" (assignment_expression "puVar13[5] = 0" (subscript_expression "puVar13[5]" identifier [ number_literal ]) = number_literal) ;) }))) (case_statement "case 1:" case number_literal :) (case_statement "case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;" case number_literal : (labeled_statement "switchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];" statement_identifier : (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;)) (labeled_statement "LAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;" statement_identifier : (if_statement "if (puVar11 == (ulong *)0x0) goto LAB_001312f1;" if (parenthesized_expression "(puVar11 == (ulong *)0x0)" ( (binary_expression "puVar11 == (ulong *)0x0" identifier == (cast_expression "(ulong *)0x0" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_001312f1;" goto statement_identifier ;))) (labeled_statement "LAB_001311f0:\n      puVar13 = puVar11;" statement_identifier : (expression_statement "puVar13 = puVar11;" (assignment_expression "puVar13 = puVar11" identifier = identifier) ;)) (expression_statement "uVar20 = *puVar11;" (assignment_expression "uVar20 = *puVar11" identifier = (pointer_expression "*puVar11" * identifier)) ;) (goto_statement "goto LAB_00131000;" goto statement_identifier ;)) (case_statement "case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;" case number_literal : (expression_statement "uVar12 = FUN_0012b400(uVar15);" (assignment_expression "uVar12 = FUN_0012b400(uVar15)" identifier = (call_expression "FUN_0012b400(uVar15)" identifier (argument_list "(uVar15)" ( identifier )))) ;) (expression_statement "uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);" (assignment_expression "uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc])" identifier = (call_expression "FUN_00124c80(uVar12,(int)puVar13[0xc])" identifier (argument_list "(uVar12,(int)puVar13[0xc])" ( identifier , (cast_expression "(int)puVar13[0xc]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "puVar13[0xc]" identifier [ number_literal ])) )))) ;) (expression_statement "uVar6 = (ulong)uVar5 - puVar13[4];" (assignment_expression "uVar6 = (ulong)uVar5 - puVar13[4]" identifier = (binary_expression "(ulong)uVar5 - puVar13[4]" (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier) - (subscript_expression "puVar13[4]" identifier [ number_literal ]))) ;) (expression_statement "puVar13[4] = (ulong)uVar5;" (assignment_expression "puVar13[4] = (ulong)uVar5" (subscript_expression "puVar13[4]" identifier [ number_literal ]) = (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (goto_statement "goto LAB_001312d8;" goto statement_identifier ;)) (case_statement "case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;" case number_literal : (expression_statement "iVar4 = FUN_00115810(puVar13);" (assignment_expression "iVar4 = FUN_00115810(puVar13)" identifier = (call_expression "FUN_00115810(puVar13)" identifier (argument_list "(puVar13)" ( identifier )))) ;) (expression_statement "uVar6 = (ulong)iVar4;" (assignment_expression "uVar6 = (ulong)iVar4" identifier = (cast_expression "(ulong)iVar4" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (labeled_statement "LAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];" statement_identifier : (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;)) (labeled_statement "joined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }" statement_identifier : (if_statement "if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }" if (parenthesized_expression "(uVar6 != 0)" ( (binary_expression "uVar6 != 0" identifier != number_literal) )) (compound_statement "{\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }" { (expression_statement "iVar4 = *(int *)((long)puVar13 + 0x5c);" (assignment_expression "iVar4 = *(int *)((long)puVar13 + 0x5c)" identifier = (pointer_expression "*(int *)((long)puVar13 + 0x5c)" * (cast_expression "(int *)((long)puVar13 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5c)" ( (binary_expression "(long)puVar13 + 0x5c" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (labeled_statement "LAB_00131375:\n        lVar14 = lVar14 + uVar6;" statement_identifier : (expression_statement "lVar14 = lVar14 + uVar6;" (assignment_expression "lVar14 = lVar14 + uVar6" identifier = (binary_expression "lVar14 + uVar6" identifier + identifier)) ;)) (if_statement "if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }" if (parenthesized_expression "(iVar4 == 0xb)" ( (binary_expression "iVar4 == 0xb" identifier == number_literal) )) (compound_statement "{\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }" { (labeled_statement "LAB_001313e8:\n          uVar18 = uVar18 + 0x10;" statement_identifier : (expression_statement "uVar18 = uVar18 + 0x10;" (assignment_expression "uVar18 = uVar18 + 0x10" identifier = (binary_expression "uVar18 + 0x10" identifier + number_literal)) ;)) (expression_statement "bVar3 = true;" (assignment_expression "bVar3 = true" identifier = true) ;) }) (else_clause "else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }" else (compound_statement "{\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }" { (labeled_statement "LAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;" statement_identifier : (if_statement "if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;" if (parenthesized_expression "(((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0))" ( (binary_expression "((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)" (parenthesized_expression "((iVar4 == 2) && ((uVar18 & 0x10) != 0))" ( (binary_expression "(iVar4 == 2) && ((uVar18 & 0x10) != 0)" (parenthesized_expression "(iVar4 == 2)" ( (binary_expression "iVar4 == 2" identifier == number_literal) )) && (parenthesized_expression "((uVar18 & 0x10) != 0)" ( (binary_expression "(uVar18 & 0x10) != 0" (parenthesized_expression "(uVar18 & 0x10)" ( (binary_expression "uVar18 & 0x10" identifier & number_literal) )) != number_literal) ))) )) && (parenthesized_expression "(lVar14 == 0)" ( (binary_expression "lVar14 == 0" identifier == number_literal) ))) )) (goto_statement "goto LAB_001313e8;" goto statement_identifier ;))) (expression_statement "uVar18 = 0;" (assignment_expression "uVar18 = 0" identifier = number_literal) ;) (expression_statement "bVar3 = true;" (assignment_expression "bVar3 = true" identifier = true) ;) }))) (goto_statement "goto LAB_001311e7;" goto statement_identifier ;) }))) (if_statement "if (puVar11 != (ulong *)0x0) goto LAB_001311f0;" if (parenthesized_expression "(puVar11 != (ulong *)0x0)" ( (binary_expression "puVar11 != (ulong *)0x0" identifier != (cast_expression "(ulong *)0x0" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_001311f0;" goto statement_identifier ;)) (labeled_statement "LAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }" statement_identifier : (if_statement "if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }" if (parenthesized_expression "((lVar14 == 0) && ((uVar18 & 0x10) == 0))" ( (binary_expression "(lVar14 == 0) && ((uVar18 & 0x10) == 0)" (parenthesized_expression "(lVar14 == 0)" ( (binary_expression "lVar14 == 0" identifier == number_literal) )) && (parenthesized_expression "((uVar18 & 0x10) == 0)" ( (binary_expression "(uVar18 & 0x10) == 0" (parenthesized_expression "(uVar18 & 0x10)" ( (binary_expression "uVar18 & 0x10" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }" { (expression_statement "uVar5 = uVar18 + 1;" (assignment_expression "uVar5 = uVar18 + 1" identifier = (binary_expression "uVar18 + 1" identifier + number_literal)) ;) (expression_statement "uVar17 = uVar18 & 0xfffffff0;" (assignment_expression "uVar17 = uVar18 & 0xfffffff0" identifier = (binary_expression "uVar18 & 0xfffffff0" identifier & number_literal)) ;) (expression_statement "uVar18 = 0;" (assignment_expression "uVar18 = 0" identifier = number_literal) ;) (if_statement "if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }" if (parenthesized_expression "(uVar17 != 0)" ( (binary_expression "uVar17 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar18 = uVar5;\n        }" { (expression_statement "uVar18 = uVar5;" (assignment_expression "uVar18 = uVar5" identifier = identifier) ;) })) }) (else_clause "else {\n        uVar18 = 0;\n      }" else (compound_statement "{\n        uVar18 = 0;\n      }" { (expression_statement "uVar18 = 0;" (assignment_expression "uVar18 = 0" identifier = number_literal) ;) })))) (if_statement "if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }" if (parenthesized_expression "(!bVar3)" ( (unary_expression "!bVar3" ! identifier) )) (compound_statement "{\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }" { (do_statement "do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);" do (compound_statement "{\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        }" { (if_statement "if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }" if (parenthesized_expression "(param_1[1] != *param_1)" ( (binary_expression "param_1[1] != *param_1" (subscript_expression "param_1[1]" identifier [ number_literal ]) != (pointer_expression "*param_1" * identifier)) )) (compound_statement "{\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }" { (expression_statement "param_1[1] = *param_1;" (assignment_expression "param_1[1] = *param_1" (subscript_expression "param_1[1]" identifier [ number_literal ]) = (pointer_expression "*param_1" * identifier)) ;) (expression_statement "local_54 = 1;" (assignment_expression "local_54 = 1" identifier = number_literal) ;) })) (expression_statement "param_1 = (ulong *)param_1[7];" (assignment_expression "param_1 = (ulong *)param_1[7]" identifier = (cast_expression "(ulong *)param_1[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[7]" identifier [ number_literal ]))) ;) }) while (parenthesized_expression "(param_1 != (ulong *)0x0)" ( (binary_expression "param_1 != (ulong *)0x0" identifier != (cast_expression "(ulong *)0x0" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) (return_statement "return local_54;" return identifier ;) })) (expression_statement "local_48 = local_48 - 1;" (assignment_expression "local_48 = local_48 - 1" identifier = (binary_expression "local_48 - 1" identifier - number_literal)) ;) (if_statement "if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f870(uVar10,uVar12);\n      }" if (parenthesized_expression "(local_48 == 0)" ( (binary_expression "local_48 == 0" identifier == number_literal) )) (compound_statement "{\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    /* WARNING: Subroutine does not return */\n        FUN_0011f870(uVar10,uVar12);\n      }" { (expression_statement "uVar12 = *param_2;" (assignment_expression "uVar12 = *param_2" identifier = (pointer_expression "*param_2" * identifier)) ;) (expression_statement "uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);" (assignment_expression "uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5)" identifier = (call_expression "dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5)" identifier (argument_list "(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5)" ( number_literal , (string_literal ""Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"" " string_content ") , number_literal )))) ;) comment (expression_statement "FUN_0011f870(uVar10,uVar12);" (call_expression "FUN_0011f870(uVar10,uVar12)" identifier (argument_list "(uVar10,uVar12)" ( identifier , identifier ))) ;) })) (break_statement "break;" break ;)) (case_statement "case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;" case number_literal : (expression_statement "iVar4 = FUN_00111570(puVar13);" (assignment_expression "iVar4 = FUN_00111570(puVar13)" identifier = (call_expression "FUN_00111570(puVar13)" identifier (argument_list "(puVar13)" ( identifier )))) ;) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "uVar6 = (ulong)iVar4;" (assignment_expression "uVar6 = (ulong)iVar4" identifier = (cast_expression "(ulong)iVar4" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (goto_statement "goto joined_r0x00131369;" goto statement_identifier ;)) })) }) while (parenthesized_expression "( true )" ( true )) ;) (labeled_statement "code_r0x00131269:\n  local_54 = 1;" statement_identifier : (expression_statement "local_54 = 1;" (assignment_expression "local_54 = 1" identifier = number_literal) ;)) (expression_statement "puVar13 = puVar11;" (assignment_expression "puVar13 = puVar11" identifier = identifier) ;) (expression_statement "uVar20 = uVar15;" (assignment_expression "uVar20 = uVar15" identifier = identifier) ;) (goto_statement "goto LAB_00131000;" goto statement_identifier ;) })))
(translation_unit "int relax_segment(frag *segment_frag_root,segT segment,int pass)\n\n{\n  offsetT *poVar1;\n  offsetT *poVar2;\n  addressT aVar3;\n  symbolS *psVar4;\n  addressT aVar5;\n  offsetT oVar6;\n  frag *pfVar7;\n  bool bVar8;\n  undefined4 uVar9;\n  int iVar10;\n  uint uVar11;\n  ulong uVar12;\n  ulong uVar13;\n  segT paVar14;\n  char *format;\n  valueT vVar15;\n  fragS *pfVar16;\n  long lVar17;\n  char *pcVar18;\n  relax_stateT rVar19;\n  long lVar20;\n  frag *pfVar21;\n  long lVar22;\n  ulong uVar23;\n  uint uVar24;\n  uint uVar25;\n  short sVar26;\n  addressT aVar27;\n  ulong uVar28;\n  int local_54;\n  ulong local_48;\n  \n  subseg_change(segment,0);\n  if (segment_frag_root == (frag *)0x0) {\n    return 0;\n  }\n  sVar26 = 0;\n  uVar28 = 0;\n  pfVar21 = segment_frag_root;\n  lVar22 = 0;\n  do {\n    lVar17 = lVar22;\n    rVar19 = pfVar21->fr_type;\n    pfVar21->fr_address = uVar28;\n    *(short *)&pfVar21->field_0x58 = sVar26;\n    uVar28 = pfVar21->fr_fix + uVar28;\n    pfVar21->field_0x5a = pfVar21->field_0x5a & 0xfe;\n    switch(rVar19) {\n    case rs_dummy:\n    case rs_broken_word:\n    case rs_fill_nop:\n    default:\n      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar18,(ulong)rVar19,0xaa0,"../../gas/write.c");\n    case rs_fill:\n      poVar1 = &pfVar21->fr_offset;\n      poVar2 = &pfVar21->fr_var;\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = *poVar1 * *poVar2 + uVar28;\n      break;\n    case rs_align:\n    case rs_align_code:\n    case rs_align_test:\n      uVar12 = -1L << ((byte)pfVar21->fr_offset & 0x3f);\n      uVar12 = ~uVar12 + uVar28 & uVar12;\n      uVar13 = uVar12 - uVar28;\n      if (((pfVar21->fr_subtype == 0) || (uVar13 <= pfVar21->fr_subtype)) &&\n         (uVar23 = pfVar21->fr_var, uVar28 = uVar12, uVar13 % uVar23 != 0)) {\n        pcVar18 = (char *)dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                                     "alignment padding (%lu bytes) not a multiple of %ld",uVar13,5)\n        ;\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18,uVar13,uVar23);\n        uVar28 = uVar12 - uVar13 % (ulong)pfVar21->fr_var;\n      }\n    case rs_org:\n      pfVar21 = pfVar21->fr_next;\n      sVar26 = sVar26 + 1;\n      break;\n    case rs_machine_dependent:\n      if (pfVar21->fr_symbol != (symbolS *)0x0) {\n        resolve_symbol_value(pfVar21->fr_symbol);\n      }\n      iVar10 = md_estimate_size_before_relax(pfVar21,segment);\n      uVar28 = (long)iVar10 + uVar28;\n    case rs_space:\n    case rs_space_nop:\n      pfVar21 = pfVar21->fr_next;\n      break;\n    case rs_leb128:\n      pfVar21->fr_offset = 1;\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = uVar28 + 1;\n      break;\n    case rs_cfa:\n      iVar10 = eh_frame_estimate_size_before_relax(pfVar21);\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = (long)iVar10 + uVar28;\n      break;\n    case rs_dwarf2dbg:\n      iVar10 = dwarf2dbg_estimate_size_before_relax(pfVar21);\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = (long)iVar10 + uVar28;\n    }\n    lVar22 = lVar17 + 1;\n  } while (pfVar21 != (frag *)0x0);\n  local_48 = lVar17 + 1;\n  local_54 = 0;\n  if (local_48 <= local_48 * local_48) {\n    local_48 = local_48 * local_48;\n  }\n  uVar25 = 0;\n  do {\n    if (segment_frag_root == (frag *)0x0) {\n      return local_54;\n    }\n    bVar8 = false;\n    lVar22 = 0;\n    pfVar21 = segment_frag_root;\n    aVar27 = segment_frag_root->fr_address;\nLAB_00131000:\n    aVar3 = lVar22 + aVar27;\n    psVar4 = pfVar21->fr_symbol;\n    pfVar21->fr_address = aVar3;\n    uVar28 = pfVar21->fr_offset;\n    rVar19 = pfVar21->fr_type;\n    pfVar21->field_0x5a = pfVar21->field_0x5a & 0xfe | pfVar21->field_0x5a & 1 ^ 1;\n    switch(rVar19) {\n    case rs_dummy:\n    case rs_broken_word:\n    case rs_fill_nop:\n    default:\n      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar18,(ulong)rVar19,0xbf4,"../../gas/write.c");\n    case rs_align:\n    case rs_align_code:\n    case rs_align_test:\n      uVar28 = -1L << ((byte)uVar28 & 0x3f);\n      lVar17 = pfVar21->fr_fix + aVar27;\n      lVar20 = aVar3 + pfVar21->fr_fix;\n      uVar13 = (ulong)pfVar21->fr_subtype;\n      uVar23 = lVar17 + ~uVar28 & uVar28;\n      uVar12 = (lVar20 + ~uVar28 & uVar28) - lVar20;\n      if (pfVar21->fr_subtype == 0) {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n      }\n      else if (uVar13 < uVar23 - lVar17) {\n        uVar28 = uVar12;\n        if (uVar13 < uVar12) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n        if (uVar13 < uVar12) {\n          uVar12 = 0;\n          uVar28 = lVar17 - uVar23;\n        }\n      }\n      if (-1 < (long)uVar28) goto LAB_001312d8;\n      if (((uVar25 & 0x10) != 0) && ((uVar25 & 0xe) != 0)) {\n                    /* WARNING: Load size is inaccurate */\n        lVar17 = *segment->userdata;\n        pfVar16 = frag_alloc((obstack *)(lVar17 + 0x30));\n        lVar20 = pfVar21->fr_var + *(long *)(lVar17 + 0x48);\n        *(long *)(lVar17 + 0x48) = lVar20;\n        if (lVar20 == *(long *)(lVar17 + 0x40)) {\n          *(byte *)(lVar17 + 0x80) = *(byte *)(lVar17 + 0x80) | 2;\n        }\n        uVar23 = lVar20 + *(ulong *)(lVar17 + 0x60) & ~*(ulong *)(lVar17 + 0x60);\n        uVar13 = *(ulong *)(lVar17 + 0x50);\n        *(ulong *)(lVar17 + 0x48) = uVar23;\n        if (uVar13 - *(long *)(lVar17 + 0x38) < uVar23 - *(long *)(lVar17 + 0x38)) {\n          *(ulong *)(lVar17 + 0x48) = uVar13;\n          uVar23 = uVar13;\n        }\n        *(ulong *)(lVar17 + 0x40) = uVar23;\n        aVar27 = pfVar21->last_fr_address;\n        pfVar16->fr_address = pfVar21->fr_address;\n        pfVar16->last_fr_address = aVar27;\n        oVar6 = pfVar21->fr_var;\n        pfVar16->fr_fix = pfVar21->fr_fix;\n        pfVar16->fr_var = oVar6;\n        psVar4 = pfVar21->fr_symbol;\n        pfVar16->fr_offset = pfVar21->fr_offset;\n        pfVar16->fr_symbol = psVar4;\n        pfVar7 = pfVar21->fr_next;\n        pfVar16->fr_opcode = pfVar21->fr_opcode;\n        pfVar16->fr_next = pfVar7;\n        uVar11 = pfVar21->fr_line;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x4c;\n        pfVar16->fr_file = pfVar21->fr_file;\n        pfVar16->fr_line = uVar11;\n        *(undefined4 *)&pfVar16->field_0x4c = uVar9;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x58;\n        rVar19 = pfVar21->fr_type;\n        pfVar16->line = pfVar21->line;\n        *(undefined4 *)&pfVar16->field_0x58 = uVar9;\n        pfVar16->fr_type = rVar19;\n        pfVar16->fr_subtype = pfVar21->fr_subtype;\n        memcpy(pfVar16->fr_literal,pfVar21->fr_literal + pfVar21->fr_fix,pfVar21->fr_var);\n        oVar6 = pfVar21->fr_offset;\n        aVar27 = uVar12 + aVar3 + pfVar21->fr_fix;\n        pfVar16->fr_type = rs_fill;\n        pfVar16->fr_address = aVar27;\n        lVar17 = (1L << ((byte)oVar6 & 0x3f)) / pfVar21->fr_var;\n        pfVar16->fr_fix = 0;\n        pfVar16->fr_offset = lVar17;\n        lVar20 = 1L << ((byte)pfVar21->fr_offset & 0x3f);\n        if (lVar17 * pfVar16->fr_var - lVar20 != 0) {\n          pfVar16->fr_offset = lVar20;\n          pfVar16->fr_var = 1;\n        }\n        uVar28 = uVar28 + lVar20;\n        pfVar16->fr_address = aVar27 - (uVar28 + lVar22);\n        pfVar16->field_0x5a = pfVar16->field_0x5a & 0xfe | pfVar16->field_0x5a & 1 ^ 1;\n        pfVar21->fr_next = pfVar16;\n        goto LAB_00131409;\n      }\n      pfVar16 = pfVar21->fr_next;\n      lVar22 = lVar22 + uVar28;\n      goto LAB_0013137d;\n    case rs_org:\n      if (psVar4 != (symbolS *)0x0) {\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (paVar14->vma != 0) {\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/write.c",0xb80,"relax_segment");\n        }\n        vVar15 = S_GET_VALUE(psVar4);\n        uVar28 = uVar28 + vVar15;\n      }\n      pfVar16 = pfVar21->fr_next;\n      if (pfVar16 == (fragS *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/write.c",0xb84,"relax_segment");\n      }\n      aVar5 = pfVar16->fr_address;\n      if (uVar28 < aVar3 + pfVar21->fr_fix) {\n        if (pass < 2) goto code_r0x00131269;\n        pcVar18 = (char *)dcgettext(0,"attempt to move .org backwards",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_type = rs_align;\n        pfVar21->fr_subtype = 0;\n        pfVar21->fr_offset = 0;\n        pfVar21->fr_fix = aVar5 - aVar27;\n        pfVar16 = pfVar21->fr_next;\n        goto LAB_001311e7;\n      }\n      uVar28 = uVar28 - (aVar5 + lVar22);\nLAB_00131409:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\n        goto LAB_00131375;\n      }\n      pfVar21 = pfVar16;\n      aVar27 = pfVar16->fr_address;\n      goto LAB_00131000;\n    case rs_space:\n    case rs_space_nop:\n      if (psVar4 != (symbolS *)0x0) {\n        vVar15 = S_GET_VALUE(psVar4);\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (((paVar14 == (segT)(_bfd_std_section + 0x230)) &&\n            (iVar10 = S_IS_COMMON(psVar4), iVar10 == 0)) &&\n           (iVar10 = S_IS_DEFINED(psVar4), iVar10 != 0)) {\n          if ((long)vVar15 < 0) {\n            if (pass < 2) {\n              pfVar16 = pfVar21->fr_next;\n              local_54 = 1;\n            }\n            else {\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }\n            goto LAB_001311e7;\n          }\n          pfVar16 = pfVar21->fr_next;\n          uVar28 = ((pfVar21->fr_fix + aVar27) - pfVar16->fr_address) + vVar15;\n          goto LAB_00131409;\n        }\n        pcVar18 = (char *)dcgettext(0,".space specifies non-absolute value",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_symbol = (symbolS *)0x0;\n      }\n    case rs_fill:\n    case rs_machine_dependent:\nswitchD_00131039_caseD_1:\n      pfVar16 = pfVar21->fr_next;\nLAB_001311e7:\n      if (pfVar16 == (fragS *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      pfVar21 = pfVar16;\n      aVar27 = pfVar16->fr_address;\n      goto LAB_00131000;\n    case rs_leb128:\n      vVar15 = resolve_symbol_value(psVar4);\n      uVar11 = sizeof_leb128(vVar15,pfVar21->fr_subtype);\n      uVar28 = (ulong)uVar11 - pfVar21->fr_offset;\n      pfVar21->fr_offset = (ulong)uVar11;\n      goto LAB_001312d8;\n    case rs_cfa:\n      iVar10 = eh_frame_relax_frag(pfVar21);\n      uVar28 = (ulong)iVar10;\nLAB_001312d8:\n      pfVar16 = pfVar21->fr_next;\njoined_r0x00131369:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\nLAB_00131375:\n        lVar22 = lVar22 + uVar28;\n        if (rVar19 == rs_leb128) {\nLAB_001313e8:\n          uVar25 = uVar25 + 0x10;\n          bVar8 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;\n          uVar25 = 0;\n          bVar8 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (pfVar16 != (fragS *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar22 == 0) && ((uVar25 & 0x10) == 0)) {\n        uVar11 = uVar25 + 1;\n        uVar24 = uVar25 & 0xfffffff0;\n        uVar25 = 0;\n        if (uVar24 != 0) {\n          uVar25 = uVar11;\n        }\n      }\n      else {\n        uVar25 = 0;\n      }\n      if (!bVar8) {\n        do {\n          if (segment_frag_root->last_fr_address != segment_frag_root->fr_address) {\n            segment_frag_root->last_fr_address = segment_frag_root->fr_address;\n            local_54 = 1;\n          }\n          segment_frag_root = segment_frag_root->fr_next;\n        } while (segment_frag_root != (frag *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        pcVar18 = segment->name;\n        format = (char *)dcgettext(0,\n                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                                   ,5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(format,pcVar18);\n      }\n      break;\n    case rs_dwarf2dbg:\n      iVar10 = dwarf2dbg_relax_frag(pfVar21);\n      pfVar16 = pfVar21->fr_next;\n      uVar28 = (ulong)iVar10;\n      goto joined_r0x00131369;\n    }\n  } while( true );\ncode_r0x00131269:\n  local_54 = 1;\n  pfVar21 = pfVar16;\n  aVar27 = aVar5;\n  goto LAB_00131000;\n}\n\n" (function_definition "int relax_segment(frag *segment_frag_root,segT segment,int pass)\n\n{\n  offsetT *poVar1;\n  offsetT *poVar2;\n  addressT aVar3;\n  symbolS *psVar4;\n  addressT aVar5;\n  offsetT oVar6;\n  frag *pfVar7;\n  bool bVar8;\n  undefined4 uVar9;\n  int iVar10;\n  uint uVar11;\n  ulong uVar12;\n  ulong uVar13;\n  segT paVar14;\n  char *format;\n  valueT vVar15;\n  fragS *pfVar16;\n  long lVar17;\n  char *pcVar18;\n  relax_stateT rVar19;\n  long lVar20;\n  frag *pfVar21;\n  long lVar22;\n  ulong uVar23;\n  uint uVar24;\n  uint uVar25;\n  short sVar26;\n  addressT aVar27;\n  ulong uVar28;\n  int local_54;\n  ulong local_48;\n  \n  subseg_change(segment,0);\n  if (segment_frag_root == (frag *)0x0) {\n    return 0;\n  }\n  sVar26 = 0;\n  uVar28 = 0;\n  pfVar21 = segment_frag_root;\n  lVar22 = 0;\n  do {\n    lVar17 = lVar22;\n    rVar19 = pfVar21->fr_type;\n    pfVar21->fr_address = uVar28;\n    *(short *)&pfVar21->field_0x58 = sVar26;\n    uVar28 = pfVar21->fr_fix + uVar28;\n    pfVar21->field_0x5a = pfVar21->field_0x5a & 0xfe;\n    switch(rVar19) {\n    case rs_dummy:\n    case rs_broken_word:\n    case rs_fill_nop:\n    default:\n      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar18,(ulong)rVar19,0xaa0,"../../gas/write.c");\n    case rs_fill:\n      poVar1 = &pfVar21->fr_offset;\n      poVar2 = &pfVar21->fr_var;\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = *poVar1 * *poVar2 + uVar28;\n      break;\n    case rs_align:\n    case rs_align_code:\n    case rs_align_test:\n      uVar12 = -1L << ((byte)pfVar21->fr_offset & 0x3f);\n      uVar12 = ~uVar12 + uVar28 & uVar12;\n      uVar13 = uVar12 - uVar28;\n      if (((pfVar21->fr_subtype == 0) || (uVar13 <= pfVar21->fr_subtype)) &&\n         (uVar23 = pfVar21->fr_var, uVar28 = uVar12, uVar13 % uVar23 != 0)) {\n        pcVar18 = (char *)dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                                     "alignment padding (%lu bytes) not a multiple of %ld",uVar13,5)\n        ;\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18,uVar13,uVar23);\n        uVar28 = uVar12 - uVar13 % (ulong)pfVar21->fr_var;\n      }\n    case rs_org:\n      pfVar21 = pfVar21->fr_next;\n      sVar26 = sVar26 + 1;\n      break;\n    case rs_machine_dependent:\n      if (pfVar21->fr_symbol != (symbolS *)0x0) {\n        resolve_symbol_value(pfVar21->fr_symbol);\n      }\n      iVar10 = md_estimate_size_before_relax(pfVar21,segment);\n      uVar28 = (long)iVar10 + uVar28;\n    case rs_space:\n    case rs_space_nop:\n      pfVar21 = pfVar21->fr_next;\n      break;\n    case rs_leb128:\n      pfVar21->fr_offset = 1;\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = uVar28 + 1;\n      break;\n    case rs_cfa:\n      iVar10 = eh_frame_estimate_size_before_relax(pfVar21);\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = (long)iVar10 + uVar28;\n      break;\n    case rs_dwarf2dbg:\n      iVar10 = dwarf2dbg_estimate_size_before_relax(pfVar21);\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = (long)iVar10 + uVar28;\n    }\n    lVar22 = lVar17 + 1;\n  } while (pfVar21 != (frag *)0x0);\n  local_48 = lVar17 + 1;\n  local_54 = 0;\n  if (local_48 <= local_48 * local_48) {\n    local_48 = local_48 * local_48;\n  }\n  uVar25 = 0;\n  do {\n    if (segment_frag_root == (frag *)0x0) {\n      return local_54;\n    }\n    bVar8 = false;\n    lVar22 = 0;\n    pfVar21 = segment_frag_root;\n    aVar27 = segment_frag_root->fr_address;\nLAB_00131000:\n    aVar3 = lVar22 + aVar27;\n    psVar4 = pfVar21->fr_symbol;\n    pfVar21->fr_address = aVar3;\n    uVar28 = pfVar21->fr_offset;\n    rVar19 = pfVar21->fr_type;\n    pfVar21->field_0x5a = pfVar21->field_0x5a & 0xfe | pfVar21->field_0x5a & 1 ^ 1;\n    switch(rVar19) {\n    case rs_dummy:\n    case rs_broken_word:\n    case rs_fill_nop:\n    default:\n      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar18,(ulong)rVar19,0xbf4,"../../gas/write.c");\n    case rs_align:\n    case rs_align_code:\n    case rs_align_test:\n      uVar28 = -1L << ((byte)uVar28 & 0x3f);\n      lVar17 = pfVar21->fr_fix + aVar27;\n      lVar20 = aVar3 + pfVar21->fr_fix;\n      uVar13 = (ulong)pfVar21->fr_subtype;\n      uVar23 = lVar17 + ~uVar28 & uVar28;\n      uVar12 = (lVar20 + ~uVar28 & uVar28) - lVar20;\n      if (pfVar21->fr_subtype == 0) {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n      }\n      else if (uVar13 < uVar23 - lVar17) {\n        uVar28 = uVar12;\n        if (uVar13 < uVar12) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n        if (uVar13 < uVar12) {\n          uVar12 = 0;\n          uVar28 = lVar17 - uVar23;\n        }\n      }\n      if (-1 < (long)uVar28) goto LAB_001312d8;\n      if (((uVar25 & 0x10) != 0) && ((uVar25 & 0xe) != 0)) {\n                    /* WARNING: Load size is inaccurate */\n        lVar17 = *segment->userdata;\n        pfVar16 = frag_alloc((obstack *)(lVar17 + 0x30));\n        lVar20 = pfVar21->fr_var + *(long *)(lVar17 + 0x48);\n        *(long *)(lVar17 + 0x48) = lVar20;\n        if (lVar20 == *(long *)(lVar17 + 0x40)) {\n          *(byte *)(lVar17 + 0x80) = *(byte *)(lVar17 + 0x80) | 2;\n        }\n        uVar23 = lVar20 + *(ulong *)(lVar17 + 0x60) & ~*(ulong *)(lVar17 + 0x60);\n        uVar13 = *(ulong *)(lVar17 + 0x50);\n        *(ulong *)(lVar17 + 0x48) = uVar23;\n        if (uVar13 - *(long *)(lVar17 + 0x38) < uVar23 - *(long *)(lVar17 + 0x38)) {\n          *(ulong *)(lVar17 + 0x48) = uVar13;\n          uVar23 = uVar13;\n        }\n        *(ulong *)(lVar17 + 0x40) = uVar23;\n        aVar27 = pfVar21->last_fr_address;\n        pfVar16->fr_address = pfVar21->fr_address;\n        pfVar16->last_fr_address = aVar27;\n        oVar6 = pfVar21->fr_var;\n        pfVar16->fr_fix = pfVar21->fr_fix;\n        pfVar16->fr_var = oVar6;\n        psVar4 = pfVar21->fr_symbol;\n        pfVar16->fr_offset = pfVar21->fr_offset;\n        pfVar16->fr_symbol = psVar4;\n        pfVar7 = pfVar21->fr_next;\n        pfVar16->fr_opcode = pfVar21->fr_opcode;\n        pfVar16->fr_next = pfVar7;\n        uVar11 = pfVar21->fr_line;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x4c;\n        pfVar16->fr_file = pfVar21->fr_file;\n        pfVar16->fr_line = uVar11;\n        *(undefined4 *)&pfVar16->field_0x4c = uVar9;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x58;\n        rVar19 = pfVar21->fr_type;\n        pfVar16->line = pfVar21->line;\n        *(undefined4 *)&pfVar16->field_0x58 = uVar9;\n        pfVar16->fr_type = rVar19;\n        pfVar16->fr_subtype = pfVar21->fr_subtype;\n        memcpy(pfVar16->fr_literal,pfVar21->fr_literal + pfVar21->fr_fix,pfVar21->fr_var);\n        oVar6 = pfVar21->fr_offset;\n        aVar27 = uVar12 + aVar3 + pfVar21->fr_fix;\n        pfVar16->fr_type = rs_fill;\n        pfVar16->fr_address = aVar27;\n        lVar17 = (1L << ((byte)oVar6 & 0x3f)) / pfVar21->fr_var;\n        pfVar16->fr_fix = 0;\n        pfVar16->fr_offset = lVar17;\n        lVar20 = 1L << ((byte)pfVar21->fr_offset & 0x3f);\n        if (lVar17 * pfVar16->fr_var - lVar20 != 0) {\n          pfVar16->fr_offset = lVar20;\n          pfVar16->fr_var = 1;\n        }\n        uVar28 = uVar28 + lVar20;\n        pfVar16->fr_address = aVar27 - (uVar28 + lVar22);\n        pfVar16->field_0x5a = pfVar16->field_0x5a & 0xfe | pfVar16->field_0x5a & 1 ^ 1;\n        pfVar21->fr_next = pfVar16;\n        goto LAB_00131409;\n      }\n      pfVar16 = pfVar21->fr_next;\n      lVar22 = lVar22 + uVar28;\n      goto LAB_0013137d;\n    case rs_org:\n      if (psVar4 != (symbolS *)0x0) {\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (paVar14->vma != 0) {\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/write.c",0xb80,"relax_segment");\n        }\n        vVar15 = S_GET_VALUE(psVar4);\n        uVar28 = uVar28 + vVar15;\n      }\n      pfVar16 = pfVar21->fr_next;\n      if (pfVar16 == (fragS *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/write.c",0xb84,"relax_segment");\n      }\n      aVar5 = pfVar16->fr_address;\n      if (uVar28 < aVar3 + pfVar21->fr_fix) {\n        if (pass < 2) goto code_r0x00131269;\n        pcVar18 = (char *)dcgettext(0,"attempt to move .org backwards",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_type = rs_align;\n        pfVar21->fr_subtype = 0;\n        pfVar21->fr_offset = 0;\n        pfVar21->fr_fix = aVar5 - aVar27;\n        pfVar16 = pfVar21->fr_next;\n        goto LAB_001311e7;\n      }\n      uVar28 = uVar28 - (aVar5 + lVar22);\nLAB_00131409:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\n        goto LAB_00131375;\n      }\n      pfVar21 = pfVar16;\n      aVar27 = pfVar16->fr_address;\n      goto LAB_00131000;\n    case rs_space:\n    case rs_space_nop:\n      if (psVar4 != (symbolS *)0x0) {\n        vVar15 = S_GET_VALUE(psVar4);\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (((paVar14 == (segT)(_bfd_std_section + 0x230)) &&\n            (iVar10 = S_IS_COMMON(psVar4), iVar10 == 0)) &&\n           (iVar10 = S_IS_DEFINED(psVar4), iVar10 != 0)) {\n          if ((long)vVar15 < 0) {\n            if (pass < 2) {\n              pfVar16 = pfVar21->fr_next;\n              local_54 = 1;\n            }\n            else {\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }\n            goto LAB_001311e7;\n          }\n          pfVar16 = pfVar21->fr_next;\n          uVar28 = ((pfVar21->fr_fix + aVar27) - pfVar16->fr_address) + vVar15;\n          goto LAB_00131409;\n        }\n        pcVar18 = (char *)dcgettext(0,".space specifies non-absolute value",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_symbol = (symbolS *)0x0;\n      }\n    case rs_fill:\n    case rs_machine_dependent:\nswitchD_00131039_caseD_1:\n      pfVar16 = pfVar21->fr_next;\nLAB_001311e7:\n      if (pfVar16 == (fragS *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      pfVar21 = pfVar16;\n      aVar27 = pfVar16->fr_address;\n      goto LAB_00131000;\n    case rs_leb128:\n      vVar15 = resolve_symbol_value(psVar4);\n      uVar11 = sizeof_leb128(vVar15,pfVar21->fr_subtype);\n      uVar28 = (ulong)uVar11 - pfVar21->fr_offset;\n      pfVar21->fr_offset = (ulong)uVar11;\n      goto LAB_001312d8;\n    case rs_cfa:\n      iVar10 = eh_frame_relax_frag(pfVar21);\n      uVar28 = (ulong)iVar10;\nLAB_001312d8:\n      pfVar16 = pfVar21->fr_next;\njoined_r0x00131369:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\nLAB_00131375:\n        lVar22 = lVar22 + uVar28;\n        if (rVar19 == rs_leb128) {\nLAB_001313e8:\n          uVar25 = uVar25 + 0x10;\n          bVar8 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;\n          uVar25 = 0;\n          bVar8 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (pfVar16 != (fragS *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar22 == 0) && ((uVar25 & 0x10) == 0)) {\n        uVar11 = uVar25 + 1;\n        uVar24 = uVar25 & 0xfffffff0;\n        uVar25 = 0;\n        if (uVar24 != 0) {\n          uVar25 = uVar11;\n        }\n      }\n      else {\n        uVar25 = 0;\n      }\n      if (!bVar8) {\n        do {\n          if (segment_frag_root->last_fr_address != segment_frag_root->fr_address) {\n            segment_frag_root->last_fr_address = segment_frag_root->fr_address;\n            local_54 = 1;\n          }\n          segment_frag_root = segment_frag_root->fr_next;\n        } while (segment_frag_root != (frag *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        pcVar18 = segment->name;\n        format = (char *)dcgettext(0,\n                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                                   ,5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(format,pcVar18);\n      }\n      break;\n    case rs_dwarf2dbg:\n      iVar10 = dwarf2dbg_relax_frag(pfVar21);\n      pfVar16 = pfVar21->fr_next;\n      uVar28 = (ulong)iVar10;\n      goto joined_r0x00131369;\n    }\n  } while( true );\ncode_r0x00131269:\n  local_54 = 1;\n  pfVar21 = pfVar16;\n  aVar27 = aVar5;\n  goto LAB_00131000;\n}" primitive_type (function_declarator "relax_segment(frag *segment_frag_root,segT segment,int pass)" identifier (parameter_list "(frag *segment_frag_root,segT segment,int pass)" ( (parameter_declaration "frag *segment_frag_root" type_identifier (pointer_declarator "*segment_frag_root" * identifier)) , (parameter_declaration "segT segment" type_identifier identifier) , (parameter_declaration "int pass" primitive_type identifier) ))) (compound_statement "{\n  offsetT *poVar1;\n  offsetT *poVar2;\n  addressT aVar3;\n  symbolS *psVar4;\n  addressT aVar5;\n  offsetT oVar6;\n  frag *pfVar7;\n  bool bVar8;\n  undefined4 uVar9;\n  int iVar10;\n  uint uVar11;\n  ulong uVar12;\n  ulong uVar13;\n  segT paVar14;\n  char *format;\n  valueT vVar15;\n  fragS *pfVar16;\n  long lVar17;\n  char *pcVar18;\n  relax_stateT rVar19;\n  long lVar20;\n  frag *pfVar21;\n  long lVar22;\n  ulong uVar23;\n  uint uVar24;\n  uint uVar25;\n  short sVar26;\n  addressT aVar27;\n  ulong uVar28;\n  int local_54;\n  ulong local_48;\n  \n  subseg_change(segment,0);\n  if (segment_frag_root == (frag *)0x0) {\n    return 0;\n  }\n  sVar26 = 0;\n  uVar28 = 0;\n  pfVar21 = segment_frag_root;\n  lVar22 = 0;\n  do {\n    lVar17 = lVar22;\n    rVar19 = pfVar21->fr_type;\n    pfVar21->fr_address = uVar28;\n    *(short *)&pfVar21->field_0x58 = sVar26;\n    uVar28 = pfVar21->fr_fix + uVar28;\n    pfVar21->field_0x5a = pfVar21->field_0x5a & 0xfe;\n    switch(rVar19) {\n    case rs_dummy:\n    case rs_broken_word:\n    case rs_fill_nop:\n    default:\n      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar18,(ulong)rVar19,0xaa0,"../../gas/write.c");\n    case rs_fill:\n      poVar1 = &pfVar21->fr_offset;\n      poVar2 = &pfVar21->fr_var;\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = *poVar1 * *poVar2 + uVar28;\n      break;\n    case rs_align:\n    case rs_align_code:\n    case rs_align_test:\n      uVar12 = -1L << ((byte)pfVar21->fr_offset & 0x3f);\n      uVar12 = ~uVar12 + uVar28 & uVar12;\n      uVar13 = uVar12 - uVar28;\n      if (((pfVar21->fr_subtype == 0) || (uVar13 <= pfVar21->fr_subtype)) &&\n         (uVar23 = pfVar21->fr_var, uVar28 = uVar12, uVar13 % uVar23 != 0)) {\n        pcVar18 = (char *)dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                                     "alignment padding (%lu bytes) not a multiple of %ld",uVar13,5)\n        ;\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18,uVar13,uVar23);\n        uVar28 = uVar12 - uVar13 % (ulong)pfVar21->fr_var;\n      }\n    case rs_org:\n      pfVar21 = pfVar21->fr_next;\n      sVar26 = sVar26 + 1;\n      break;\n    case rs_machine_dependent:\n      if (pfVar21->fr_symbol != (symbolS *)0x0) {\n        resolve_symbol_value(pfVar21->fr_symbol);\n      }\n      iVar10 = md_estimate_size_before_relax(pfVar21,segment);\n      uVar28 = (long)iVar10 + uVar28;\n    case rs_space:\n    case rs_space_nop:\n      pfVar21 = pfVar21->fr_next;\n      break;\n    case rs_leb128:\n      pfVar21->fr_offset = 1;\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = uVar28 + 1;\n      break;\n    case rs_cfa:\n      iVar10 = eh_frame_estimate_size_before_relax(pfVar21);\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = (long)iVar10 + uVar28;\n      break;\n    case rs_dwarf2dbg:\n      iVar10 = dwarf2dbg_estimate_size_before_relax(pfVar21);\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = (long)iVar10 + uVar28;\n    }\n    lVar22 = lVar17 + 1;\n  } while (pfVar21 != (frag *)0x0);\n  local_48 = lVar17 + 1;\n  local_54 = 0;\n  if (local_48 <= local_48 * local_48) {\n    local_48 = local_48 * local_48;\n  }\n  uVar25 = 0;\n  do {\n    if (segment_frag_root == (frag *)0x0) {\n      return local_54;\n    }\n    bVar8 = false;\n    lVar22 = 0;\n    pfVar21 = segment_frag_root;\n    aVar27 = segment_frag_root->fr_address;\nLAB_00131000:\n    aVar3 = lVar22 + aVar27;\n    psVar4 = pfVar21->fr_symbol;\n    pfVar21->fr_address = aVar3;\n    uVar28 = pfVar21->fr_offset;\n    rVar19 = pfVar21->fr_type;\n    pfVar21->field_0x5a = pfVar21->field_0x5a & 0xfe | pfVar21->field_0x5a & 1 ^ 1;\n    switch(rVar19) {\n    case rs_dummy:\n    case rs_broken_word:\n    case rs_fill_nop:\n    default:\n      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar18,(ulong)rVar19,0xbf4,"../../gas/write.c");\n    case rs_align:\n    case rs_align_code:\n    case rs_align_test:\n      uVar28 = -1L << ((byte)uVar28 & 0x3f);\n      lVar17 = pfVar21->fr_fix + aVar27;\n      lVar20 = aVar3 + pfVar21->fr_fix;\n      uVar13 = (ulong)pfVar21->fr_subtype;\n      uVar23 = lVar17 + ~uVar28 & uVar28;\n      uVar12 = (lVar20 + ~uVar28 & uVar28) - lVar20;\n      if (pfVar21->fr_subtype == 0) {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n      }\n      else if (uVar13 < uVar23 - lVar17) {\n        uVar28 = uVar12;\n        if (uVar13 < uVar12) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n        if (uVar13 < uVar12) {\n          uVar12 = 0;\n          uVar28 = lVar17 - uVar23;\n        }\n      }\n      if (-1 < (long)uVar28) goto LAB_001312d8;\n      if (((uVar25 & 0x10) != 0) && ((uVar25 & 0xe) != 0)) {\n                    /* WARNING: Load size is inaccurate */\n        lVar17 = *segment->userdata;\n        pfVar16 = frag_alloc((obstack *)(lVar17 + 0x30));\n        lVar20 = pfVar21->fr_var + *(long *)(lVar17 + 0x48);\n        *(long *)(lVar17 + 0x48) = lVar20;\n        if (lVar20 == *(long *)(lVar17 + 0x40)) {\n          *(byte *)(lVar17 + 0x80) = *(byte *)(lVar17 + 0x80) | 2;\n        }\n        uVar23 = lVar20 + *(ulong *)(lVar17 + 0x60) & ~*(ulong *)(lVar17 + 0x60);\n        uVar13 = *(ulong *)(lVar17 + 0x50);\n        *(ulong *)(lVar17 + 0x48) = uVar23;\n        if (uVar13 - *(long *)(lVar17 + 0x38) < uVar23 - *(long *)(lVar17 + 0x38)) {\n          *(ulong *)(lVar17 + 0x48) = uVar13;\n          uVar23 = uVar13;\n        }\n        *(ulong *)(lVar17 + 0x40) = uVar23;\n        aVar27 = pfVar21->last_fr_address;\n        pfVar16->fr_address = pfVar21->fr_address;\n        pfVar16->last_fr_address = aVar27;\n        oVar6 = pfVar21->fr_var;\n        pfVar16->fr_fix = pfVar21->fr_fix;\n        pfVar16->fr_var = oVar6;\n        psVar4 = pfVar21->fr_symbol;\n        pfVar16->fr_offset = pfVar21->fr_offset;\n        pfVar16->fr_symbol = psVar4;\n        pfVar7 = pfVar21->fr_next;\n        pfVar16->fr_opcode = pfVar21->fr_opcode;\n        pfVar16->fr_next = pfVar7;\n        uVar11 = pfVar21->fr_line;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x4c;\n        pfVar16->fr_file = pfVar21->fr_file;\n        pfVar16->fr_line = uVar11;\n        *(undefined4 *)&pfVar16->field_0x4c = uVar9;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x58;\n        rVar19 = pfVar21->fr_type;\n        pfVar16->line = pfVar21->line;\n        *(undefined4 *)&pfVar16->field_0x58 = uVar9;\n        pfVar16->fr_type = rVar19;\n        pfVar16->fr_subtype = pfVar21->fr_subtype;\n        memcpy(pfVar16->fr_literal,pfVar21->fr_literal + pfVar21->fr_fix,pfVar21->fr_var);\n        oVar6 = pfVar21->fr_offset;\n        aVar27 = uVar12 + aVar3 + pfVar21->fr_fix;\n        pfVar16->fr_type = rs_fill;\n        pfVar16->fr_address = aVar27;\n        lVar17 = (1L << ((byte)oVar6 & 0x3f)) / pfVar21->fr_var;\n        pfVar16->fr_fix = 0;\n        pfVar16->fr_offset = lVar17;\n        lVar20 = 1L << ((byte)pfVar21->fr_offset & 0x3f);\n        if (lVar17 * pfVar16->fr_var - lVar20 != 0) {\n          pfVar16->fr_offset = lVar20;\n          pfVar16->fr_var = 1;\n        }\n        uVar28 = uVar28 + lVar20;\n        pfVar16->fr_address = aVar27 - (uVar28 + lVar22);\n        pfVar16->field_0x5a = pfVar16->field_0x5a & 0xfe | pfVar16->field_0x5a & 1 ^ 1;\n        pfVar21->fr_next = pfVar16;\n        goto LAB_00131409;\n      }\n      pfVar16 = pfVar21->fr_next;\n      lVar22 = lVar22 + uVar28;\n      goto LAB_0013137d;\n    case rs_org:\n      if (psVar4 != (symbolS *)0x0) {\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (paVar14->vma != 0) {\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/write.c",0xb80,"relax_segment");\n        }\n        vVar15 = S_GET_VALUE(psVar4);\n        uVar28 = uVar28 + vVar15;\n      }\n      pfVar16 = pfVar21->fr_next;\n      if (pfVar16 == (fragS *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/write.c",0xb84,"relax_segment");\n      }\n      aVar5 = pfVar16->fr_address;\n      if (uVar28 < aVar3 + pfVar21->fr_fix) {\n        if (pass < 2) goto code_r0x00131269;\n        pcVar18 = (char *)dcgettext(0,"attempt to move .org backwards",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_type = rs_align;\n        pfVar21->fr_subtype = 0;\n        pfVar21->fr_offset = 0;\n        pfVar21->fr_fix = aVar5 - aVar27;\n        pfVar16 = pfVar21->fr_next;\n        goto LAB_001311e7;\n      }\n      uVar28 = uVar28 - (aVar5 + lVar22);\nLAB_00131409:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\n        goto LAB_00131375;\n      }\n      pfVar21 = pfVar16;\n      aVar27 = pfVar16->fr_address;\n      goto LAB_00131000;\n    case rs_space:\n    case rs_space_nop:\n      if (psVar4 != (symbolS *)0x0) {\n        vVar15 = S_GET_VALUE(psVar4);\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (((paVar14 == (segT)(_bfd_std_section + 0x230)) &&\n            (iVar10 = S_IS_COMMON(psVar4), iVar10 == 0)) &&\n           (iVar10 = S_IS_DEFINED(psVar4), iVar10 != 0)) {\n          if ((long)vVar15 < 0) {\n            if (pass < 2) {\n              pfVar16 = pfVar21->fr_next;\n              local_54 = 1;\n            }\n            else {\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }\n            goto LAB_001311e7;\n          }\n          pfVar16 = pfVar21->fr_next;\n          uVar28 = ((pfVar21->fr_fix + aVar27) - pfVar16->fr_address) + vVar15;\n          goto LAB_00131409;\n        }\n        pcVar18 = (char *)dcgettext(0,".space specifies non-absolute value",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_symbol = (symbolS *)0x0;\n      }\n    case rs_fill:\n    case rs_machine_dependent:\nswitchD_00131039_caseD_1:\n      pfVar16 = pfVar21->fr_next;\nLAB_001311e7:\n      if (pfVar16 == (fragS *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      pfVar21 = pfVar16;\n      aVar27 = pfVar16->fr_address;\n      goto LAB_00131000;\n    case rs_leb128:\n      vVar15 = resolve_symbol_value(psVar4);\n      uVar11 = sizeof_leb128(vVar15,pfVar21->fr_subtype);\n      uVar28 = (ulong)uVar11 - pfVar21->fr_offset;\n      pfVar21->fr_offset = (ulong)uVar11;\n      goto LAB_001312d8;\n    case rs_cfa:\n      iVar10 = eh_frame_relax_frag(pfVar21);\n      uVar28 = (ulong)iVar10;\nLAB_001312d8:\n      pfVar16 = pfVar21->fr_next;\njoined_r0x00131369:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\nLAB_00131375:\n        lVar22 = lVar22 + uVar28;\n        if (rVar19 == rs_leb128) {\nLAB_001313e8:\n          uVar25 = uVar25 + 0x10;\n          bVar8 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;\n          uVar25 = 0;\n          bVar8 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (pfVar16 != (fragS *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar22 == 0) && ((uVar25 & 0x10) == 0)) {\n        uVar11 = uVar25 + 1;\n        uVar24 = uVar25 & 0xfffffff0;\n        uVar25 = 0;\n        if (uVar24 != 0) {\n          uVar25 = uVar11;\n        }\n      }\n      else {\n        uVar25 = 0;\n      }\n      if (!bVar8) {\n        do {\n          if (segment_frag_root->last_fr_address != segment_frag_root->fr_address) {\n            segment_frag_root->last_fr_address = segment_frag_root->fr_address;\n            local_54 = 1;\n          }\n          segment_frag_root = segment_frag_root->fr_next;\n        } while (segment_frag_root != (frag *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        pcVar18 = segment->name;\n        format = (char *)dcgettext(0,\n                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                                   ,5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(format,pcVar18);\n      }\n      break;\n    case rs_dwarf2dbg:\n      iVar10 = dwarf2dbg_relax_frag(pfVar21);\n      pfVar16 = pfVar21->fr_next;\n      uVar28 = (ulong)iVar10;\n      goto joined_r0x00131369;\n    }\n  } while( true );\ncode_r0x00131269:\n  local_54 = 1;\n  pfVar21 = pfVar16;\n  aVar27 = aVar5;\n  goto LAB_00131000;\n}" { (declaration "offsetT *poVar1;" type_identifier (pointer_declarator "*poVar1" * identifier) ;) (declaration "offsetT *poVar2;" type_identifier (pointer_declarator "*poVar2" * identifier) ;) (declaration "addressT aVar3;" type_identifier identifier ;) (declaration "symbolS *psVar4;" type_identifier (pointer_declarator "*psVar4" * identifier) ;) (declaration "addressT aVar5;" type_identifier identifier ;) (declaration "offsetT oVar6;" type_identifier identifier ;) (declaration "frag *pfVar7;" type_identifier (pointer_declarator "*pfVar7" * identifier) ;) (declaration "bool bVar8;" primitive_type identifier ;) (declaration "undefined4 uVar9;" type_identifier identifier ;) (declaration "int iVar10;" primitive_type identifier ;) (declaration "uint uVar11;" type_identifier identifier ;) (declaration "ulong uVar12;" type_identifier identifier ;) (declaration "ulong uVar13;" type_identifier identifier ;) (declaration "segT paVar14;" type_identifier identifier ;) (declaration "char *format;" primitive_type (pointer_declarator "*format" * identifier) ;) (declaration "valueT vVar15;" type_identifier identifier ;) (declaration "fragS *pfVar16;" type_identifier (pointer_declarator "*pfVar16" * identifier) ;) (declaration "long lVar17;" (sized_type_specifier "long" long) identifier ;) (declaration "char *pcVar18;" primitive_type (pointer_declarator "*pcVar18" * identifier) ;) (declaration "relax_stateT rVar19;" type_identifier identifier ;) (declaration "long lVar20;" (sized_type_specifier "long" long) identifier ;) (declaration "frag *pfVar21;" type_identifier (pointer_declarator "*pfVar21" * identifier) ;) (declaration "long lVar22;" (sized_type_specifier "long" long) identifier ;) (declaration "ulong uVar23;" type_identifier identifier ;) (declaration "uint uVar24;" type_identifier identifier ;) (declaration "uint uVar25;" type_identifier identifier ;) (declaration "short sVar26;" (sized_type_specifier "short" short) identifier ;) (declaration "addressT aVar27;" type_identifier identifier ;) (declaration "ulong uVar28;" type_identifier identifier ;) (declaration "int local_54;" primitive_type identifier ;) (declaration "ulong local_48;" type_identifier identifier ;) (expression_statement "subseg_change(segment,0);" (call_expression "subseg_change(segment,0)" identifier (argument_list "(segment,0)" ( identifier , number_literal ))) ;) (if_statement "if (segment_frag_root == (frag *)0x0) {\n    return 0;\n  }" if (parenthesized_expression "(segment_frag_root == (frag *)0x0)" ( (binary_expression "segment_frag_root == (frag *)0x0" identifier == (cast_expression "(frag *)0x0" ( (type_descriptor "frag *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "sVar26 = 0;" (assignment_expression "sVar26 = 0" identifier = number_literal) ;) (expression_statement "uVar28 = 0;" (assignment_expression "uVar28 = 0" identifier = number_literal) ;) (expression_statement "pfVar21 = segment_frag_root;" (assignment_expression "pfVar21 = segment_frag_root" identifier = identifier) ;) (expression_statement "lVar22 = 0;" (assignment_expression "lVar22 = 0" identifier = number_literal) ;) (do_statement "do {\n    lVar17 = lVar22;\n    rVar19 = pfVar21->fr_type;\n    pfVar21->fr_address = uVar28;\n    *(short *)&pfVar21->field_0x58 = sVar26;\n    uVar28 = pfVar21->fr_fix + uVar28;\n    pfVar21->field_0x5a = pfVar21->field_0x5a & 0xfe;\n    switch(rVar19) {\n    case rs_dummy:\n    case rs_broken_word:\n    case rs_fill_nop:\n    default:\n      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar18,(ulong)rVar19,0xaa0,"../../gas/write.c");\n    case rs_fill:\n      poVar1 = &pfVar21->fr_offset;\n      poVar2 = &pfVar21->fr_var;\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = *poVar1 * *poVar2 + uVar28;\n      break;\n    case rs_align:\n    case rs_align_code:\n    case rs_align_test:\n      uVar12 = -1L << ((byte)pfVar21->fr_offset & 0x3f);\n      uVar12 = ~uVar12 + uVar28 & uVar12;\n      uVar13 = uVar12 - uVar28;\n      if (((pfVar21->fr_subtype == 0) || (uVar13 <= pfVar21->fr_subtype)) &&\n         (uVar23 = pfVar21->fr_var, uVar28 = uVar12, uVar13 % uVar23 != 0)) {\n        pcVar18 = (char *)dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                                     "alignment padding (%lu bytes) not a multiple of %ld",uVar13,5)\n        ;\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18,uVar13,uVar23);\n        uVar28 = uVar12 - uVar13 % (ulong)pfVar21->fr_var;\n      }\n    case rs_org:\n      pfVar21 = pfVar21->fr_next;\n      sVar26 = sVar26 + 1;\n      break;\n    case rs_machine_dependent:\n      if (pfVar21->fr_symbol != (symbolS *)0x0) {\n        resolve_symbol_value(pfVar21->fr_symbol);\n      }\n      iVar10 = md_estimate_size_before_relax(pfVar21,segment);\n      uVar28 = (long)iVar10 + uVar28;\n    case rs_space:\n    case rs_space_nop:\n      pfVar21 = pfVar21->fr_next;\n      break;\n    case rs_leb128:\n      pfVar21->fr_offset = 1;\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = uVar28 + 1;\n      break;\n    case rs_cfa:\n      iVar10 = eh_frame_estimate_size_before_relax(pfVar21);\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = (long)iVar10 + uVar28;\n      break;\n    case rs_dwarf2dbg:\n      iVar10 = dwarf2dbg_estimate_size_before_relax(pfVar21);\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = (long)iVar10 + uVar28;\n    }\n    lVar22 = lVar17 + 1;\n  } while (pfVar21 != (frag *)0x0);" do (compound_statement "{\n    lVar17 = lVar22;\n    rVar19 = pfVar21->fr_type;\n    pfVar21->fr_address = uVar28;\n    *(short *)&pfVar21->field_0x58 = sVar26;\n    uVar28 = pfVar21->fr_fix + uVar28;\n    pfVar21->field_0x5a = pfVar21->field_0x5a & 0xfe;\n    switch(rVar19) {\n    case rs_dummy:\n    case rs_broken_word:\n    case rs_fill_nop:\n    default:\n      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar18,(ulong)rVar19,0xaa0,"../../gas/write.c");\n    case rs_fill:\n      poVar1 = &pfVar21->fr_offset;\n      poVar2 = &pfVar21->fr_var;\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = *poVar1 * *poVar2 + uVar28;\n      break;\n    case rs_align:\n    case rs_align_code:\n    case rs_align_test:\n      uVar12 = -1L << ((byte)pfVar21->fr_offset & 0x3f);\n      uVar12 = ~uVar12 + uVar28 & uVar12;\n      uVar13 = uVar12 - uVar28;\n      if (((pfVar21->fr_subtype == 0) || (uVar13 <= pfVar21->fr_subtype)) &&\n         (uVar23 = pfVar21->fr_var, uVar28 = uVar12, uVar13 % uVar23 != 0)) {\n        pcVar18 = (char *)dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                                     "alignment padding (%lu bytes) not a multiple of %ld",uVar13,5)\n        ;\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18,uVar13,uVar23);\n        uVar28 = uVar12 - uVar13 % (ulong)pfVar21->fr_var;\n      }\n    case rs_org:\n      pfVar21 = pfVar21->fr_next;\n      sVar26 = sVar26 + 1;\n      break;\n    case rs_machine_dependent:\n      if (pfVar21->fr_symbol != (symbolS *)0x0) {\n        resolve_symbol_value(pfVar21->fr_symbol);\n      }\n      iVar10 = md_estimate_size_before_relax(pfVar21,segment);\n      uVar28 = (long)iVar10 + uVar28;\n    case rs_space:\n    case rs_space_nop:\n      pfVar21 = pfVar21->fr_next;\n      break;\n    case rs_leb128:\n      pfVar21->fr_offset = 1;\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = uVar28 + 1;\n      break;\n    case rs_cfa:\n      iVar10 = eh_frame_estimate_size_before_relax(pfVar21);\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = (long)iVar10 + uVar28;\n      break;\n    case rs_dwarf2dbg:\n      iVar10 = dwarf2dbg_estimate_size_before_relax(pfVar21);\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = (long)iVar10 + uVar28;\n    }\n    lVar22 = lVar17 + 1;\n  }" { (expression_statement "lVar17 = lVar22;" (assignment_expression "lVar17 = lVar22" identifier = identifier) ;) (expression_statement "rVar19 = pfVar21->fr_type;" (assignment_expression "rVar19 = pfVar21->fr_type" identifier = (field_expression "pfVar21->fr_type" identifier -> field_identifier)) ;) (expression_statement "pfVar21->fr_address = uVar28;" (assignment_expression "pfVar21->fr_address = uVar28" (field_expression "pfVar21->fr_address" identifier -> field_identifier) = identifier) ;) (expression_statement "*(short *)&pfVar21->field_0x58 = sVar26;" (assignment_expression "*(short *)&pfVar21->field_0x58 = sVar26" (pointer_expression "*(short *)&pfVar21->field_0x58" * (cast_expression "(short *)&pfVar21->field_0x58" ( (type_descriptor "short *" (sized_type_specifier "short" short) (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pfVar21->field_0x58" & (field_expression "pfVar21->field_0x58" identifier -> field_identifier)))) = identifier) ;) (expression_statement "uVar28 = pfVar21->fr_fix + uVar28;" (assignment_expression "uVar28 = pfVar21->fr_fix + uVar28" identifier = (binary_expression "pfVar21->fr_fix + uVar28" (field_expression "pfVar21->fr_fix" identifier -> field_identifier) + identifier)) ;) (expression_statement "pfVar21->field_0x5a = pfVar21->field_0x5a & 0xfe;" (assignment_expression "pfVar21->field_0x5a = pfVar21->field_0x5a & 0xfe" (field_expression "pfVar21->field_0x5a" identifier -> field_identifier) = (binary_expression "pfVar21->field_0x5a & 0xfe" (field_expression "pfVar21->field_0x5a" identifier -> field_identifier) & number_literal)) ;) (switch_statement "switch(rVar19) {\n    case rs_dummy:\n    case rs_broken_word:\n    case rs_fill_nop:\n    default:\n      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar18,(ulong)rVar19,0xaa0,"../../gas/write.c");\n    case rs_fill:\n      poVar1 = &pfVar21->fr_offset;\n      poVar2 = &pfVar21->fr_var;\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = *poVar1 * *poVar2 + uVar28;\n      break;\n    case rs_align:\n    case rs_align_code:\n    case rs_align_test:\n      uVar12 = -1L << ((byte)pfVar21->fr_offset & 0x3f);\n      uVar12 = ~uVar12 + uVar28 & uVar12;\n      uVar13 = uVar12 - uVar28;\n      if (((pfVar21->fr_subtype == 0) || (uVar13 <= pfVar21->fr_subtype)) &&\n         (uVar23 = pfVar21->fr_var, uVar28 = uVar12, uVar13 % uVar23 != 0)) {\n        pcVar18 = (char *)dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                                     "alignment padding (%lu bytes) not a multiple of %ld",uVar13,5)\n        ;\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18,uVar13,uVar23);\n        uVar28 = uVar12 - uVar13 % (ulong)pfVar21->fr_var;\n      }\n    case rs_org:\n      pfVar21 = pfVar21->fr_next;\n      sVar26 = sVar26 + 1;\n      break;\n    case rs_machine_dependent:\n      if (pfVar21->fr_symbol != (symbolS *)0x0) {\n        resolve_symbol_value(pfVar21->fr_symbol);\n      }\n      iVar10 = md_estimate_size_before_relax(pfVar21,segment);\n      uVar28 = (long)iVar10 + uVar28;\n    case rs_space:\n    case rs_space_nop:\n      pfVar21 = pfVar21->fr_next;\n      break;\n    case rs_leb128:\n      pfVar21->fr_offset = 1;\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = uVar28 + 1;\n      break;\n    case rs_cfa:\n      iVar10 = eh_frame_estimate_size_before_relax(pfVar21);\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = (long)iVar10 + uVar28;\n      break;\n    case rs_dwarf2dbg:\n      iVar10 = dwarf2dbg_estimate_size_before_relax(pfVar21);\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = (long)iVar10 + uVar28;\n    }" switch (parenthesized_expression "(rVar19)" ( identifier )) (compound_statement "{\n    case rs_dummy:\n    case rs_broken_word:\n    case rs_fill_nop:\n    default:\n      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar18,(ulong)rVar19,0xaa0,"../../gas/write.c");\n    case rs_fill:\n      poVar1 = &pfVar21->fr_offset;\n      poVar2 = &pfVar21->fr_var;\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = *poVar1 * *poVar2 + uVar28;\n      break;\n    case rs_align:\n    case rs_align_code:\n    case rs_align_test:\n      uVar12 = -1L << ((byte)pfVar21->fr_offset & 0x3f);\n      uVar12 = ~uVar12 + uVar28 & uVar12;\n      uVar13 = uVar12 - uVar28;\n      if (((pfVar21->fr_subtype == 0) || (uVar13 <= pfVar21->fr_subtype)) &&\n         (uVar23 = pfVar21->fr_var, uVar28 = uVar12, uVar13 % uVar23 != 0)) {\n        pcVar18 = (char *)dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                                     "alignment padding (%lu bytes) not a multiple of %ld",uVar13,5)\n        ;\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18,uVar13,uVar23);\n        uVar28 = uVar12 - uVar13 % (ulong)pfVar21->fr_var;\n      }\n    case rs_org:\n      pfVar21 = pfVar21->fr_next;\n      sVar26 = sVar26 + 1;\n      break;\n    case rs_machine_dependent:\n      if (pfVar21->fr_symbol != (symbolS *)0x0) {\n        resolve_symbol_value(pfVar21->fr_symbol);\n      }\n      iVar10 = md_estimate_size_before_relax(pfVar21,segment);\n      uVar28 = (long)iVar10 + uVar28;\n    case rs_space:\n    case rs_space_nop:\n      pfVar21 = pfVar21->fr_next;\n      break;\n    case rs_leb128:\n      pfVar21->fr_offset = 1;\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = uVar28 + 1;\n      break;\n    case rs_cfa:\n      iVar10 = eh_frame_estimate_size_before_relax(pfVar21);\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = (long)iVar10 + uVar28;\n      break;\n    case rs_dwarf2dbg:\n      iVar10 = dwarf2dbg_estimate_size_before_relax(pfVar21);\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = (long)iVar10 + uVar28;\n    }" { (case_statement "case rs_dummy:" case identifier :) (case_statement "case rs_broken_word:" case identifier :) (case_statement "case rs_fill_nop:" case identifier :) (case_statement "default:\n      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar18,(ulong)rVar19,0xaa0,"../../gas/write.c");" default : (expression_statement "pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" identifier (argument_list "(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" ( number_literal , (string_literal ""Case value %ld unexpected at line %d of file \"%s\"\n"" " string_content escape_sequence string_content escape_sequence escape_sequence ") , number_literal ))))) ;) comment (expression_statement "as_fatal(pcVar18,(ulong)rVar19,0xaa0,"../../gas/write.c");" (call_expression "as_fatal(pcVar18,(ulong)rVar19,0xaa0,"../../gas/write.c")" identifier (argument_list "(pcVar18,(ulong)rVar19,0xaa0,"../../gas/write.c")" ( identifier , (cast_expression "(ulong)rVar19" ( (type_descriptor "ulong" type_identifier) ) identifier) , number_literal , (string_literal ""../../gas/write.c"" " string_content ") ))) ;)) (case_statement "case rs_fill:\n      poVar1 = &pfVar21->fr_offset;\n      poVar2 = &pfVar21->fr_var;\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = *poVar1 * *poVar2 + uVar28;\n      break;" case identifier : (expression_statement "poVar1 = &pfVar21->fr_offset;" (assignment_expression "poVar1 = &pfVar21->fr_offset" identifier = (pointer_expression "&pfVar21->fr_offset" & (field_expression "pfVar21->fr_offset" identifier -> field_identifier))) ;) (expression_statement "poVar2 = &pfVar21->fr_var;" (assignment_expression "poVar2 = &pfVar21->fr_var" identifier = (pointer_expression "&pfVar21->fr_var" & (field_expression "pfVar21->fr_var" identifier -> field_identifier))) ;) (expression_statement "pfVar21 = pfVar21->fr_next;" (assignment_expression "pfVar21 = pfVar21->fr_next" identifier = (field_expression "pfVar21->fr_next" identifier -> field_identifier)) ;) (expression_statement "uVar28 = *poVar1 * *poVar2 + uVar28;" (assignment_expression "uVar28 = *poVar1 * *poVar2 + uVar28" identifier = (binary_expression "*poVar1 * *poVar2 + uVar28" (binary_expression "*poVar1 * *poVar2" (pointer_expression "*poVar1" * identifier) * (pointer_expression "*poVar2" * identifier)) + identifier)) ;) (break_statement "break;" break ;)) (case_statement "case rs_align:" case identifier :) (case_statement "case rs_align_code:" case identifier :) (case_statement "case rs_align_test:\n      uVar12 = -1L << ((byte)pfVar21->fr_offset & 0x3f);\n      uVar12 = ~uVar12 + uVar28 & uVar12;\n      uVar13 = uVar12 - uVar28;\n      if (((pfVar21->fr_subtype == 0) || (uVar13 <= pfVar21->fr_subtype)) &&\n         (uVar23 = pfVar21->fr_var, uVar28 = uVar12, uVar13 % uVar23 != 0)) {\n        pcVar18 = (char *)dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                                     "alignment padding (%lu bytes) not a multiple of %ld",uVar13,5)\n        ;\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18,uVar13,uVar23);\n        uVar28 = uVar12 - uVar13 % (ulong)pfVar21->fr_var;\n      }" case identifier : (expression_statement "uVar12 = -1L << ((byte)pfVar21->fr_offset & 0x3f);" (assignment_expression "uVar12 = -1L << ((byte)pfVar21->fr_offset & 0x3f)" identifier = (binary_expression "-1L << ((byte)pfVar21->fr_offset & 0x3f)" number_literal << (parenthesized_expression "((byte)pfVar21->fr_offset & 0x3f)" ( (binary_expression "(byte)pfVar21->fr_offset & 0x3f" (cast_expression "(byte)pfVar21->fr_offset" ( (type_descriptor "byte" type_identifier) ) (field_expression "pfVar21->fr_offset" identifier -> field_identifier)) & number_literal) )))) ;) (expression_statement "uVar12 = ~uVar12 + uVar28 & uVar12;" (assignment_expression "uVar12 = ~uVar12 + uVar28 & uVar12" identifier = (binary_expression "~uVar12 + uVar28 & uVar12" (binary_expression "~uVar12 + uVar28" (unary_expression "~uVar12" ~ identifier) + identifier) & identifier)) ;) (expression_statement "uVar13 = uVar12 - uVar28;" (assignment_expression "uVar13 = uVar12 - uVar28" identifier = (binary_expression "uVar12 - uVar28" identifier - identifier)) ;) (if_statement "if (((pfVar21->fr_subtype == 0) || (uVar13 <= pfVar21->fr_subtype)) &&\n         (uVar23 = pfVar21->fr_var, uVar28 = uVar12, uVar13 % uVar23 != 0)) {\n        pcVar18 = (char *)dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                                     "alignment padding (%lu bytes) not a multiple of %ld",uVar13,5)\n        ;\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18,uVar13,uVar23);\n        uVar28 = uVar12 - uVar13 % (ulong)pfVar21->fr_var;\n      }" if (parenthesized_expression "(((pfVar21->fr_subtype == 0) || (uVar13 <= pfVar21->fr_subtype)) &&\n         (uVar23 = pfVar21->fr_var, uVar28 = uVar12, uVar13 % uVar23 != 0))" ( (binary_expression "((pfVar21->fr_subtype == 0) || (uVar13 <= pfVar21->fr_subtype)) &&\n         (uVar23 = pfVar21->fr_var, uVar28 = uVar12, uVar13 % uVar23 != 0)" (parenthesized_expression "((pfVar21->fr_subtype == 0) || (uVar13 <= pfVar21->fr_subtype))" ( (binary_expression "(pfVar21->fr_subtype == 0) || (uVar13 <= pfVar21->fr_subtype)" (parenthesized_expression "(pfVar21->fr_subtype == 0)" ( (binary_expression "pfVar21->fr_subtype == 0" (field_expression "pfVar21->fr_subtype" identifier -> field_identifier) == number_literal) )) || (parenthesized_expression "(uVar13 <= pfVar21->fr_subtype)" ( (binary_expression "uVar13 <= pfVar21->fr_subtype" identifier <= (field_expression "pfVar21->fr_subtype" identifier -> field_identifier)) ))) )) && (parenthesized_expression "(uVar23 = pfVar21->fr_var, uVar28 = uVar12, uVar13 % uVar23 != 0)" ( (comma_expression "uVar23 = pfVar21->fr_var, uVar28 = uVar12, uVar13 % uVar23 != 0" (assignment_expression "uVar23 = pfVar21->fr_var" identifier = (field_expression "pfVar21->fr_var" identifier -> field_identifier)) , (comma_expression "uVar28 = uVar12, uVar13 % uVar23 != 0" (assignment_expression "uVar28 = uVar12" identifier = identifier) , (binary_expression "uVar13 % uVar23 != 0" (binary_expression "uVar13 % uVar23" identifier % identifier) != number_literal))) ))) )) (compound_statement "{\n        pcVar18 = (char *)dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                                     "alignment padding (%lu bytes) not a multiple of %ld",uVar13,5)\n        ;\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18,uVar13,uVar23);\n        uVar28 = uVar12 - uVar13 % (ulong)pfVar21->fr_var;\n      }" { (expression_statement "pcVar18 = (char *)dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                                     "alignment padding (%lu bytes) not a multiple of %ld",uVar13,5)\n        ;" (assignment_expression "pcVar18 = (char *)dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                                     "alignment padding (%lu bytes) not a multiple of %ld",uVar13,5)" identifier = (cast_expression "(char *)dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                                     "alignment padding (%lu bytes) not a multiple of %ld",uVar13,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                                     "alignment padding (%lu bytes) not a multiple of %ld",uVar13,5)" identifier (argument_list "(0,"alignment padding (%lu byte) not a multiple of %ld",\n                                     "alignment padding (%lu bytes) not a multiple of %ld",uVar13,5)" ( number_literal , (string_literal ""alignment padding (%lu byte) not a multiple of %ld"" " string_content ") , (string_literal ""alignment padding (%lu bytes) not a multiple of %ld"" " string_content ") , identifier , number_literal ))))) ;) (expression_statement "as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18,uVar13,uVar23);" (call_expression "as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18,uVar13,uVar23)" identifier (argument_list "(pfVar21->fr_file,pfVar21->fr_line,pcVar18,uVar13,uVar23)" ( (field_expression "pfVar21->fr_file" identifier -> field_identifier) , (field_expression "pfVar21->fr_line" identifier -> field_identifier) , identifier , identifier , identifier ))) ;) (expression_statement "uVar28 = uVar12 - uVar13 % (ulong)pfVar21->fr_var;" (assignment_expression "uVar28 = uVar12 - uVar13 % (ulong)pfVar21->fr_var" identifier = (binary_expression "uVar12 - uVar13 % (ulong)pfVar21->fr_var" identifier - (binary_expression "uVar13 % (ulong)pfVar21->fr_var" identifier % (cast_expression "(ulong)pfVar21->fr_var" ( (type_descriptor "ulong" type_identifier) ) (field_expression "pfVar21->fr_var" identifier -> field_identifier))))) ;) }))) (case_statement "case rs_org:\n      pfVar21 = pfVar21->fr_next;\n      sVar26 = sVar26 + 1;\n      break;" case identifier : (expression_statement "pfVar21 = pfVar21->fr_next;" (assignment_expression "pfVar21 = pfVar21->fr_next" identifier = (field_expression "pfVar21->fr_next" identifier -> field_identifier)) ;) (expression_statement "sVar26 = sVar26 + 1;" (assignment_expression "sVar26 = sVar26 + 1" identifier = (binary_expression "sVar26 + 1" identifier + number_literal)) ;) (break_statement "break;" break ;)) (case_statement "case rs_machine_dependent:\n      if (pfVar21->fr_symbol != (symbolS *)0x0) {\n        resolve_symbol_value(pfVar21->fr_symbol);\n      }\n      iVar10 = md_estimate_size_before_relax(pfVar21,segment);\n      uVar28 = (long)iVar10 + uVar28;" case identifier : (if_statement "if (pfVar21->fr_symbol != (symbolS *)0x0) {\n        resolve_symbol_value(pfVar21->fr_symbol);\n      }" if (parenthesized_expression "(pfVar21->fr_symbol != (symbolS *)0x0)" ( (binary_expression "pfVar21->fr_symbol != (symbolS *)0x0" (field_expression "pfVar21->fr_symbol" identifier -> field_identifier) != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        resolve_symbol_value(pfVar21->fr_symbol);\n      }" { (expression_statement "resolve_symbol_value(pfVar21->fr_symbol);" (call_expression "resolve_symbol_value(pfVar21->fr_symbol)" identifier (argument_list "(pfVar21->fr_symbol)" ( (field_expression "pfVar21->fr_symbol" identifier -> field_identifier) ))) ;) })) (expression_statement "iVar10 = md_estimate_size_before_relax(pfVar21,segment);" (assignment_expression "iVar10 = md_estimate_size_before_relax(pfVar21,segment)" identifier = (call_expression "md_estimate_size_before_relax(pfVar21,segment)" identifier (argument_list "(pfVar21,segment)" ( identifier , identifier )))) ;) (expression_statement "uVar28 = (long)iVar10 + uVar28;" (assignment_expression "uVar28 = (long)iVar10 + uVar28" identifier = (binary_expression "(long)iVar10 + uVar28" (cast_expression "(long)iVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier)) ;)) (case_statement "case rs_space:" case identifier :) (case_statement "case rs_space_nop:\n      pfVar21 = pfVar21->fr_next;\n      break;" case identifier : (expression_statement "pfVar21 = pfVar21->fr_next;" (assignment_expression "pfVar21 = pfVar21->fr_next" identifier = (field_expression "pfVar21->fr_next" identifier -> field_identifier)) ;) (break_statement "break;" break ;)) (case_statement "case rs_leb128:\n      pfVar21->fr_offset = 1;\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = uVar28 + 1;\n      break;" case identifier : (expression_statement "pfVar21->fr_offset = 1;" (assignment_expression "pfVar21->fr_offset = 1" (field_expression "pfVar21->fr_offset" identifier -> field_identifier) = number_literal) ;) (expression_statement "pfVar21 = pfVar21->fr_next;" (assignment_expression "pfVar21 = pfVar21->fr_next" identifier = (field_expression "pfVar21->fr_next" identifier -> field_identifier)) ;) (expression_statement "uVar28 = uVar28 + 1;" (assignment_expression "uVar28 = uVar28 + 1" identifier = (binary_expression "uVar28 + 1" identifier + number_literal)) ;) (break_statement "break;" break ;)) (case_statement "case rs_cfa:\n      iVar10 = eh_frame_estimate_size_before_relax(pfVar21);\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = (long)iVar10 + uVar28;\n      break;" case identifier : (expression_statement "iVar10 = eh_frame_estimate_size_before_relax(pfVar21);" (assignment_expression "iVar10 = eh_frame_estimate_size_before_relax(pfVar21)" identifier = (call_expression "eh_frame_estimate_size_before_relax(pfVar21)" identifier (argument_list "(pfVar21)" ( identifier )))) ;) (expression_statement "pfVar21 = pfVar21->fr_next;" (assignment_expression "pfVar21 = pfVar21->fr_next" identifier = (field_expression "pfVar21->fr_next" identifier -> field_identifier)) ;) (expression_statement "uVar28 = (long)iVar10 + uVar28;" (assignment_expression "uVar28 = (long)iVar10 + uVar28" identifier = (binary_expression "(long)iVar10 + uVar28" (cast_expression "(long)iVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier)) ;) (break_statement "break;" break ;)) (case_statement "case rs_dwarf2dbg:\n      iVar10 = dwarf2dbg_estimate_size_before_relax(pfVar21);\n      pfVar21 = pfVar21->fr_next;\n      uVar28 = (long)iVar10 + uVar28;" case identifier : (expression_statement "iVar10 = dwarf2dbg_estimate_size_before_relax(pfVar21);" (assignment_expression "iVar10 = dwarf2dbg_estimate_size_before_relax(pfVar21)" identifier = (call_expression "dwarf2dbg_estimate_size_before_relax(pfVar21)" identifier (argument_list "(pfVar21)" ( identifier )))) ;) (expression_statement "pfVar21 = pfVar21->fr_next;" (assignment_expression "pfVar21 = pfVar21->fr_next" identifier = (field_expression "pfVar21->fr_next" identifier -> field_identifier)) ;) (expression_statement "uVar28 = (long)iVar10 + uVar28;" (assignment_expression "uVar28 = (long)iVar10 + uVar28" identifier = (binary_expression "(long)iVar10 + uVar28" (cast_expression "(long)iVar10" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier)) ;)) })) (expression_statement "lVar22 = lVar17 + 1;" (assignment_expression "lVar22 = lVar17 + 1" identifier = (binary_expression "lVar17 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(pfVar21 != (frag *)0x0)" ( (binary_expression "pfVar21 != (frag *)0x0" identifier != (cast_expression "(frag *)0x0" ( (type_descriptor "frag *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) (expression_statement "local_48 = lVar17 + 1;" (assignment_expression "local_48 = lVar17 + 1" identifier = (binary_expression "lVar17 + 1" identifier + number_literal)) ;) (expression_statement "local_54 = 0;" (assignment_expression "local_54 = 0" identifier = number_literal) ;) (if_statement "if (local_48 <= local_48 * local_48) {\n    local_48 = local_48 * local_48;\n  }" if (parenthesized_expression "(local_48 <= local_48 * local_48)" ( (binary_expression "local_48 <= local_48 * local_48" identifier <= (binary_expression "local_48 * local_48" identifier * identifier)) )) (compound_statement "{\n    local_48 = local_48 * local_48;\n  }" { (expression_statement "local_48 = local_48 * local_48;" (assignment_expression "local_48 = local_48 * local_48" identifier = (binary_expression "local_48 * local_48" identifier * identifier)) ;) })) (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;) (do_statement "do {\n    if (segment_frag_root == (frag *)0x0) {\n      return local_54;\n    }\n    bVar8 = false;\n    lVar22 = 0;\n    pfVar21 = segment_frag_root;\n    aVar27 = segment_frag_root->fr_address;\nLAB_00131000:\n    aVar3 = lVar22 + aVar27;\n    psVar4 = pfVar21->fr_symbol;\n    pfVar21->fr_address = aVar3;\n    uVar28 = pfVar21->fr_offset;\n    rVar19 = pfVar21->fr_type;\n    pfVar21->field_0x5a = pfVar21->field_0x5a & 0xfe | pfVar21->field_0x5a & 1 ^ 1;\n    switch(rVar19) {\n    case rs_dummy:\n    case rs_broken_word:\n    case rs_fill_nop:\n    default:\n      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar18,(ulong)rVar19,0xbf4,"../../gas/write.c");\n    case rs_align:\n    case rs_align_code:\n    case rs_align_test:\n      uVar28 = -1L << ((byte)uVar28 & 0x3f);\n      lVar17 = pfVar21->fr_fix + aVar27;\n      lVar20 = aVar3 + pfVar21->fr_fix;\n      uVar13 = (ulong)pfVar21->fr_subtype;\n      uVar23 = lVar17 + ~uVar28 & uVar28;\n      uVar12 = (lVar20 + ~uVar28 & uVar28) - lVar20;\n      if (pfVar21->fr_subtype == 0) {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n      }\n      else if (uVar13 < uVar23 - lVar17) {\n        uVar28 = uVar12;\n        if (uVar13 < uVar12) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n        if (uVar13 < uVar12) {\n          uVar12 = 0;\n          uVar28 = lVar17 - uVar23;\n        }\n      }\n      if (-1 < (long)uVar28) goto LAB_001312d8;\n      if (((uVar25 & 0x10) != 0) && ((uVar25 & 0xe) != 0)) {\n                    /* WARNING: Load size is inaccurate */\n        lVar17 = *segment->userdata;\n        pfVar16 = frag_alloc((obstack *)(lVar17 + 0x30));\n        lVar20 = pfVar21->fr_var + *(long *)(lVar17 + 0x48);\n        *(long *)(lVar17 + 0x48) = lVar20;\n        if (lVar20 == *(long *)(lVar17 + 0x40)) {\n          *(byte *)(lVar17 + 0x80) = *(byte *)(lVar17 + 0x80) | 2;\n        }\n        uVar23 = lVar20 + *(ulong *)(lVar17 + 0x60) & ~*(ulong *)(lVar17 + 0x60);\n        uVar13 = *(ulong *)(lVar17 + 0x50);\n        *(ulong *)(lVar17 + 0x48) = uVar23;\n        if (uVar13 - *(long *)(lVar17 + 0x38) < uVar23 - *(long *)(lVar17 + 0x38)) {\n          *(ulong *)(lVar17 + 0x48) = uVar13;\n          uVar23 = uVar13;\n        }\n        *(ulong *)(lVar17 + 0x40) = uVar23;\n        aVar27 = pfVar21->last_fr_address;\n        pfVar16->fr_address = pfVar21->fr_address;\n        pfVar16->last_fr_address = aVar27;\n        oVar6 = pfVar21->fr_var;\n        pfVar16->fr_fix = pfVar21->fr_fix;\n        pfVar16->fr_var = oVar6;\n        psVar4 = pfVar21->fr_symbol;\n        pfVar16->fr_offset = pfVar21->fr_offset;\n        pfVar16->fr_symbol = psVar4;\n        pfVar7 = pfVar21->fr_next;\n        pfVar16->fr_opcode = pfVar21->fr_opcode;\n        pfVar16->fr_next = pfVar7;\n        uVar11 = pfVar21->fr_line;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x4c;\n        pfVar16->fr_file = pfVar21->fr_file;\n        pfVar16->fr_line = uVar11;\n        *(undefined4 *)&pfVar16->field_0x4c = uVar9;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x58;\n        rVar19 = pfVar21->fr_type;\n        pfVar16->line = pfVar21->line;\n        *(undefined4 *)&pfVar16->field_0x58 = uVar9;\n        pfVar16->fr_type = rVar19;\n        pfVar16->fr_subtype = pfVar21->fr_subtype;\n        memcpy(pfVar16->fr_literal,pfVar21->fr_literal + pfVar21->fr_fix,pfVar21->fr_var);\n        oVar6 = pfVar21->fr_offset;\n        aVar27 = uVar12 + aVar3 + pfVar21->fr_fix;\n        pfVar16->fr_type = rs_fill;\n        pfVar16->fr_address = aVar27;\n        lVar17 = (1L << ((byte)oVar6 & 0x3f)) / pfVar21->fr_var;\n        pfVar16->fr_fix = 0;\n        pfVar16->fr_offset = lVar17;\n        lVar20 = 1L << ((byte)pfVar21->fr_offset & 0x3f);\n        if (lVar17 * pfVar16->fr_var - lVar20 != 0) {\n          pfVar16->fr_offset = lVar20;\n          pfVar16->fr_var = 1;\n        }\n        uVar28 = uVar28 + lVar20;\n        pfVar16->fr_address = aVar27 - (uVar28 + lVar22);\n        pfVar16->field_0x5a = pfVar16->field_0x5a & 0xfe | pfVar16->field_0x5a & 1 ^ 1;\n        pfVar21->fr_next = pfVar16;\n        goto LAB_00131409;\n      }\n      pfVar16 = pfVar21->fr_next;\n      lVar22 = lVar22 + uVar28;\n      goto LAB_0013137d;\n    case rs_org:\n      if (psVar4 != (symbolS *)0x0) {\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (paVar14->vma != 0) {\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/write.c",0xb80,"relax_segment");\n        }\n        vVar15 = S_GET_VALUE(psVar4);\n        uVar28 = uVar28 + vVar15;\n      }\n      pfVar16 = pfVar21->fr_next;\n      if (pfVar16 == (fragS *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/write.c",0xb84,"relax_segment");\n      }\n      aVar5 = pfVar16->fr_address;\n      if (uVar28 < aVar3 + pfVar21->fr_fix) {\n        if (pass < 2) goto code_r0x00131269;\n        pcVar18 = (char *)dcgettext(0,"attempt to move .org backwards",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_type = rs_align;\n        pfVar21->fr_subtype = 0;\n        pfVar21->fr_offset = 0;\n        pfVar21->fr_fix = aVar5 - aVar27;\n        pfVar16 = pfVar21->fr_next;\n        goto LAB_001311e7;\n      }\n      uVar28 = uVar28 - (aVar5 + lVar22);\nLAB_00131409:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\n        goto LAB_00131375;\n      }\n      pfVar21 = pfVar16;\n      aVar27 = pfVar16->fr_address;\n      goto LAB_00131000;\n    case rs_space:\n    case rs_space_nop:\n      if (psVar4 != (symbolS *)0x0) {\n        vVar15 = S_GET_VALUE(psVar4);\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (((paVar14 == (segT)(_bfd_std_section + 0x230)) &&\n            (iVar10 = S_IS_COMMON(psVar4), iVar10 == 0)) &&\n           (iVar10 = S_IS_DEFINED(psVar4), iVar10 != 0)) {\n          if ((long)vVar15 < 0) {\n            if (pass < 2) {\n              pfVar16 = pfVar21->fr_next;\n              local_54 = 1;\n            }\n            else {\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }\n            goto LAB_001311e7;\n          }\n          pfVar16 = pfVar21->fr_next;\n          uVar28 = ((pfVar21->fr_fix + aVar27) - pfVar16->fr_address) + vVar15;\n          goto LAB_00131409;\n        }\n        pcVar18 = (char *)dcgettext(0,".space specifies non-absolute value",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_symbol = (symbolS *)0x0;\n      }\n    case rs_fill:\n    case rs_machine_dependent:\nswitchD_00131039_caseD_1:\n      pfVar16 = pfVar21->fr_next;\nLAB_001311e7:\n      if (pfVar16 == (fragS *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      pfVar21 = pfVar16;\n      aVar27 = pfVar16->fr_address;\n      goto LAB_00131000;\n    case rs_leb128:\n      vVar15 = resolve_symbol_value(psVar4);\n      uVar11 = sizeof_leb128(vVar15,pfVar21->fr_subtype);\n      uVar28 = (ulong)uVar11 - pfVar21->fr_offset;\n      pfVar21->fr_offset = (ulong)uVar11;\n      goto LAB_001312d8;\n    case rs_cfa:\n      iVar10 = eh_frame_relax_frag(pfVar21);\n      uVar28 = (ulong)iVar10;\nLAB_001312d8:\n      pfVar16 = pfVar21->fr_next;\njoined_r0x00131369:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\nLAB_00131375:\n        lVar22 = lVar22 + uVar28;\n        if (rVar19 == rs_leb128) {\nLAB_001313e8:\n          uVar25 = uVar25 + 0x10;\n          bVar8 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;\n          uVar25 = 0;\n          bVar8 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (pfVar16 != (fragS *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar22 == 0) && ((uVar25 & 0x10) == 0)) {\n        uVar11 = uVar25 + 1;\n        uVar24 = uVar25 & 0xfffffff0;\n        uVar25 = 0;\n        if (uVar24 != 0) {\n          uVar25 = uVar11;\n        }\n      }\n      else {\n        uVar25 = 0;\n      }\n      if (!bVar8) {\n        do {\n          if (segment_frag_root->last_fr_address != segment_frag_root->fr_address) {\n            segment_frag_root->last_fr_address = segment_frag_root->fr_address;\n            local_54 = 1;\n          }\n          segment_frag_root = segment_frag_root->fr_next;\n        } while (segment_frag_root != (frag *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        pcVar18 = segment->name;\n        format = (char *)dcgettext(0,\n                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                                   ,5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(format,pcVar18);\n      }\n      break;\n    case rs_dwarf2dbg:\n      iVar10 = dwarf2dbg_relax_frag(pfVar21);\n      pfVar16 = pfVar21->fr_next;\n      uVar28 = (ulong)iVar10;\n      goto joined_r0x00131369;\n    }\n  } while( true );" do (compound_statement "{\n    if (segment_frag_root == (frag *)0x0) {\n      return local_54;\n    }\n    bVar8 = false;\n    lVar22 = 0;\n    pfVar21 = segment_frag_root;\n    aVar27 = segment_frag_root->fr_address;\nLAB_00131000:\n    aVar3 = lVar22 + aVar27;\n    psVar4 = pfVar21->fr_symbol;\n    pfVar21->fr_address = aVar3;\n    uVar28 = pfVar21->fr_offset;\n    rVar19 = pfVar21->fr_type;\n    pfVar21->field_0x5a = pfVar21->field_0x5a & 0xfe | pfVar21->field_0x5a & 1 ^ 1;\n    switch(rVar19) {\n    case rs_dummy:\n    case rs_broken_word:\n    case rs_fill_nop:\n    default:\n      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar18,(ulong)rVar19,0xbf4,"../../gas/write.c");\n    case rs_align:\n    case rs_align_code:\n    case rs_align_test:\n      uVar28 = -1L << ((byte)uVar28 & 0x3f);\n      lVar17 = pfVar21->fr_fix + aVar27;\n      lVar20 = aVar3 + pfVar21->fr_fix;\n      uVar13 = (ulong)pfVar21->fr_subtype;\n      uVar23 = lVar17 + ~uVar28 & uVar28;\n      uVar12 = (lVar20 + ~uVar28 & uVar28) - lVar20;\n      if (pfVar21->fr_subtype == 0) {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n      }\n      else if (uVar13 < uVar23 - lVar17) {\n        uVar28 = uVar12;\n        if (uVar13 < uVar12) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n        if (uVar13 < uVar12) {\n          uVar12 = 0;\n          uVar28 = lVar17 - uVar23;\n        }\n      }\n      if (-1 < (long)uVar28) goto LAB_001312d8;\n      if (((uVar25 & 0x10) != 0) && ((uVar25 & 0xe) != 0)) {\n                    /* WARNING: Load size is inaccurate */\n        lVar17 = *segment->userdata;\n        pfVar16 = frag_alloc((obstack *)(lVar17 + 0x30));\n        lVar20 = pfVar21->fr_var + *(long *)(lVar17 + 0x48);\n        *(long *)(lVar17 + 0x48) = lVar20;\n        if (lVar20 == *(long *)(lVar17 + 0x40)) {\n          *(byte *)(lVar17 + 0x80) = *(byte *)(lVar17 + 0x80) | 2;\n        }\n        uVar23 = lVar20 + *(ulong *)(lVar17 + 0x60) & ~*(ulong *)(lVar17 + 0x60);\n        uVar13 = *(ulong *)(lVar17 + 0x50);\n        *(ulong *)(lVar17 + 0x48) = uVar23;\n        if (uVar13 - *(long *)(lVar17 + 0x38) < uVar23 - *(long *)(lVar17 + 0x38)) {\n          *(ulong *)(lVar17 + 0x48) = uVar13;\n          uVar23 = uVar13;\n        }\n        *(ulong *)(lVar17 + 0x40) = uVar23;\n        aVar27 = pfVar21->last_fr_address;\n        pfVar16->fr_address = pfVar21->fr_address;\n        pfVar16->last_fr_address = aVar27;\n        oVar6 = pfVar21->fr_var;\n        pfVar16->fr_fix = pfVar21->fr_fix;\n        pfVar16->fr_var = oVar6;\n        psVar4 = pfVar21->fr_symbol;\n        pfVar16->fr_offset = pfVar21->fr_offset;\n        pfVar16->fr_symbol = psVar4;\n        pfVar7 = pfVar21->fr_next;\n        pfVar16->fr_opcode = pfVar21->fr_opcode;\n        pfVar16->fr_next = pfVar7;\n        uVar11 = pfVar21->fr_line;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x4c;\n        pfVar16->fr_file = pfVar21->fr_file;\n        pfVar16->fr_line = uVar11;\n        *(undefined4 *)&pfVar16->field_0x4c = uVar9;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x58;\n        rVar19 = pfVar21->fr_type;\n        pfVar16->line = pfVar21->line;\n        *(undefined4 *)&pfVar16->field_0x58 = uVar9;\n        pfVar16->fr_type = rVar19;\n        pfVar16->fr_subtype = pfVar21->fr_subtype;\n        memcpy(pfVar16->fr_literal,pfVar21->fr_literal + pfVar21->fr_fix,pfVar21->fr_var);\n        oVar6 = pfVar21->fr_offset;\n        aVar27 = uVar12 + aVar3 + pfVar21->fr_fix;\n        pfVar16->fr_type = rs_fill;\n        pfVar16->fr_address = aVar27;\n        lVar17 = (1L << ((byte)oVar6 & 0x3f)) / pfVar21->fr_var;\n        pfVar16->fr_fix = 0;\n        pfVar16->fr_offset = lVar17;\n        lVar20 = 1L << ((byte)pfVar21->fr_offset & 0x3f);\n        if (lVar17 * pfVar16->fr_var - lVar20 != 0) {\n          pfVar16->fr_offset = lVar20;\n          pfVar16->fr_var = 1;\n        }\n        uVar28 = uVar28 + lVar20;\n        pfVar16->fr_address = aVar27 - (uVar28 + lVar22);\n        pfVar16->field_0x5a = pfVar16->field_0x5a & 0xfe | pfVar16->field_0x5a & 1 ^ 1;\n        pfVar21->fr_next = pfVar16;\n        goto LAB_00131409;\n      }\n      pfVar16 = pfVar21->fr_next;\n      lVar22 = lVar22 + uVar28;\n      goto LAB_0013137d;\n    case rs_org:\n      if (psVar4 != (symbolS *)0x0) {\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (paVar14->vma != 0) {\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/write.c",0xb80,"relax_segment");\n        }\n        vVar15 = S_GET_VALUE(psVar4);\n        uVar28 = uVar28 + vVar15;\n      }\n      pfVar16 = pfVar21->fr_next;\n      if (pfVar16 == (fragS *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/write.c",0xb84,"relax_segment");\n      }\n      aVar5 = pfVar16->fr_address;\n      if (uVar28 < aVar3 + pfVar21->fr_fix) {\n        if (pass < 2) goto code_r0x00131269;\n        pcVar18 = (char *)dcgettext(0,"attempt to move .org backwards",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_type = rs_align;\n        pfVar21->fr_subtype = 0;\n        pfVar21->fr_offset = 0;\n        pfVar21->fr_fix = aVar5 - aVar27;\n        pfVar16 = pfVar21->fr_next;\n        goto LAB_001311e7;\n      }\n      uVar28 = uVar28 - (aVar5 + lVar22);\nLAB_00131409:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\n        goto LAB_00131375;\n      }\n      pfVar21 = pfVar16;\n      aVar27 = pfVar16->fr_address;\n      goto LAB_00131000;\n    case rs_space:\n    case rs_space_nop:\n      if (psVar4 != (symbolS *)0x0) {\n        vVar15 = S_GET_VALUE(psVar4);\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (((paVar14 == (segT)(_bfd_std_section + 0x230)) &&\n            (iVar10 = S_IS_COMMON(psVar4), iVar10 == 0)) &&\n           (iVar10 = S_IS_DEFINED(psVar4), iVar10 != 0)) {\n          if ((long)vVar15 < 0) {\n            if (pass < 2) {\n              pfVar16 = pfVar21->fr_next;\n              local_54 = 1;\n            }\n            else {\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }\n            goto LAB_001311e7;\n          }\n          pfVar16 = pfVar21->fr_next;\n          uVar28 = ((pfVar21->fr_fix + aVar27) - pfVar16->fr_address) + vVar15;\n          goto LAB_00131409;\n        }\n        pcVar18 = (char *)dcgettext(0,".space specifies non-absolute value",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_symbol = (symbolS *)0x0;\n      }\n    case rs_fill:\n    case rs_machine_dependent:\nswitchD_00131039_caseD_1:\n      pfVar16 = pfVar21->fr_next;\nLAB_001311e7:\n      if (pfVar16 == (fragS *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      pfVar21 = pfVar16;\n      aVar27 = pfVar16->fr_address;\n      goto LAB_00131000;\n    case rs_leb128:\n      vVar15 = resolve_symbol_value(psVar4);\n      uVar11 = sizeof_leb128(vVar15,pfVar21->fr_subtype);\n      uVar28 = (ulong)uVar11 - pfVar21->fr_offset;\n      pfVar21->fr_offset = (ulong)uVar11;\n      goto LAB_001312d8;\n    case rs_cfa:\n      iVar10 = eh_frame_relax_frag(pfVar21);\n      uVar28 = (ulong)iVar10;\nLAB_001312d8:\n      pfVar16 = pfVar21->fr_next;\njoined_r0x00131369:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\nLAB_00131375:\n        lVar22 = lVar22 + uVar28;\n        if (rVar19 == rs_leb128) {\nLAB_001313e8:\n          uVar25 = uVar25 + 0x10;\n          bVar8 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;\n          uVar25 = 0;\n          bVar8 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (pfVar16 != (fragS *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar22 == 0) && ((uVar25 & 0x10) == 0)) {\n        uVar11 = uVar25 + 1;\n        uVar24 = uVar25 & 0xfffffff0;\n        uVar25 = 0;\n        if (uVar24 != 0) {\n          uVar25 = uVar11;\n        }\n      }\n      else {\n        uVar25 = 0;\n      }\n      if (!bVar8) {\n        do {\n          if (segment_frag_root->last_fr_address != segment_frag_root->fr_address) {\n            segment_frag_root->last_fr_address = segment_frag_root->fr_address;\n            local_54 = 1;\n          }\n          segment_frag_root = segment_frag_root->fr_next;\n        } while (segment_frag_root != (frag *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        pcVar18 = segment->name;\n        format = (char *)dcgettext(0,\n                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                                   ,5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(format,pcVar18);\n      }\n      break;\n    case rs_dwarf2dbg:\n      iVar10 = dwarf2dbg_relax_frag(pfVar21);\n      pfVar16 = pfVar21->fr_next;\n      uVar28 = (ulong)iVar10;\n      goto joined_r0x00131369;\n    }\n  }" { (if_statement "if (segment_frag_root == (frag *)0x0) {\n      return local_54;\n    }" if (parenthesized_expression "(segment_frag_root == (frag *)0x0)" ( (binary_expression "segment_frag_root == (frag *)0x0" identifier == (cast_expression "(frag *)0x0" ( (type_descriptor "frag *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      return local_54;\n    }" { (return_statement "return local_54;" return identifier ;) })) (expression_statement "bVar8 = false;" (assignment_expression "bVar8 = false" identifier = false) ;) (expression_statement "lVar22 = 0;" (assignment_expression "lVar22 = 0" identifier = number_literal) ;) (expression_statement "pfVar21 = segment_frag_root;" (assignment_expression "pfVar21 = segment_frag_root" identifier = identifier) ;) (expression_statement "aVar27 = segment_frag_root->fr_address;" (assignment_expression "aVar27 = segment_frag_root->fr_address" identifier = (field_expression "segment_frag_root->fr_address" identifier -> field_identifier)) ;) (labeled_statement "LAB_00131000:\n    aVar3 = lVar22 + aVar27;" statement_identifier : (expression_statement "aVar3 = lVar22 + aVar27;" (assignment_expression "aVar3 = lVar22 + aVar27" identifier = (binary_expression "lVar22 + aVar27" identifier + identifier)) ;)) (expression_statement "psVar4 = pfVar21->fr_symbol;" (assignment_expression "psVar4 = pfVar21->fr_symbol" identifier = (field_expression "pfVar21->fr_symbol" identifier -> field_identifier)) ;) (expression_statement "pfVar21->fr_address = aVar3;" (assignment_expression "pfVar21->fr_address = aVar3" (field_expression "pfVar21->fr_address" identifier -> field_identifier) = identifier) ;) (expression_statement "uVar28 = pfVar21->fr_offset;" (assignment_expression "uVar28 = pfVar21->fr_offset" identifier = (field_expression "pfVar21->fr_offset" identifier -> field_identifier)) ;) (expression_statement "rVar19 = pfVar21->fr_type;" (assignment_expression "rVar19 = pfVar21->fr_type" identifier = (field_expression "pfVar21->fr_type" identifier -> field_identifier)) ;) (expression_statement "pfVar21->field_0x5a = pfVar21->field_0x5a & 0xfe | pfVar21->field_0x5a & 1 ^ 1;" (assignment_expression "pfVar21->field_0x5a = pfVar21->field_0x5a & 0xfe | pfVar21->field_0x5a & 1 ^ 1" (field_expression "pfVar21->field_0x5a" identifier -> field_identifier) = (binary_expression "pfVar21->field_0x5a & 0xfe | pfVar21->field_0x5a & 1 ^ 1" (binary_expression "pfVar21->field_0x5a & 0xfe" (field_expression "pfVar21->field_0x5a" identifier -> field_identifier) & number_literal) | (binary_expression "pfVar21->field_0x5a & 1 ^ 1" (binary_expression "pfVar21->field_0x5a & 1" (field_expression "pfVar21->field_0x5a" identifier -> field_identifier) & number_literal) ^ number_literal))) ;) (switch_statement "switch(rVar19) {\n    case rs_dummy:\n    case rs_broken_word:\n    case rs_fill_nop:\n    default:\n      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar18,(ulong)rVar19,0xbf4,"../../gas/write.c");\n    case rs_align:\n    case rs_align_code:\n    case rs_align_test:\n      uVar28 = -1L << ((byte)uVar28 & 0x3f);\n      lVar17 = pfVar21->fr_fix + aVar27;\n      lVar20 = aVar3 + pfVar21->fr_fix;\n      uVar13 = (ulong)pfVar21->fr_subtype;\n      uVar23 = lVar17 + ~uVar28 & uVar28;\n      uVar12 = (lVar20 + ~uVar28 & uVar28) - lVar20;\n      if (pfVar21->fr_subtype == 0) {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n      }\n      else if (uVar13 < uVar23 - lVar17) {\n        uVar28 = uVar12;\n        if (uVar13 < uVar12) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n        if (uVar13 < uVar12) {\n          uVar12 = 0;\n          uVar28 = lVar17 - uVar23;\n        }\n      }\n      if (-1 < (long)uVar28) goto LAB_001312d8;\n      if (((uVar25 & 0x10) != 0) && ((uVar25 & 0xe) != 0)) {\n                    /* WARNING: Load size is inaccurate */\n        lVar17 = *segment->userdata;\n        pfVar16 = frag_alloc((obstack *)(lVar17 + 0x30));\n        lVar20 = pfVar21->fr_var + *(long *)(lVar17 + 0x48);\n        *(long *)(lVar17 + 0x48) = lVar20;\n        if (lVar20 == *(long *)(lVar17 + 0x40)) {\n          *(byte *)(lVar17 + 0x80) = *(byte *)(lVar17 + 0x80) | 2;\n        }\n        uVar23 = lVar20 + *(ulong *)(lVar17 + 0x60) & ~*(ulong *)(lVar17 + 0x60);\n        uVar13 = *(ulong *)(lVar17 + 0x50);\n        *(ulong *)(lVar17 + 0x48) = uVar23;\n        if (uVar13 - *(long *)(lVar17 + 0x38) < uVar23 - *(long *)(lVar17 + 0x38)) {\n          *(ulong *)(lVar17 + 0x48) = uVar13;\n          uVar23 = uVar13;\n        }\n        *(ulong *)(lVar17 + 0x40) = uVar23;\n        aVar27 = pfVar21->last_fr_address;\n        pfVar16->fr_address = pfVar21->fr_address;\n        pfVar16->last_fr_address = aVar27;\n        oVar6 = pfVar21->fr_var;\n        pfVar16->fr_fix = pfVar21->fr_fix;\n        pfVar16->fr_var = oVar6;\n        psVar4 = pfVar21->fr_symbol;\n        pfVar16->fr_offset = pfVar21->fr_offset;\n        pfVar16->fr_symbol = psVar4;\n        pfVar7 = pfVar21->fr_next;\n        pfVar16->fr_opcode = pfVar21->fr_opcode;\n        pfVar16->fr_next = pfVar7;\n        uVar11 = pfVar21->fr_line;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x4c;\n        pfVar16->fr_file = pfVar21->fr_file;\n        pfVar16->fr_line = uVar11;\n        *(undefined4 *)&pfVar16->field_0x4c = uVar9;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x58;\n        rVar19 = pfVar21->fr_type;\n        pfVar16->line = pfVar21->line;\n        *(undefined4 *)&pfVar16->field_0x58 = uVar9;\n        pfVar16->fr_type = rVar19;\n        pfVar16->fr_subtype = pfVar21->fr_subtype;\n        memcpy(pfVar16->fr_literal,pfVar21->fr_literal + pfVar21->fr_fix,pfVar21->fr_var);\n        oVar6 = pfVar21->fr_offset;\n        aVar27 = uVar12 + aVar3 + pfVar21->fr_fix;\n        pfVar16->fr_type = rs_fill;\n        pfVar16->fr_address = aVar27;\n        lVar17 = (1L << ((byte)oVar6 & 0x3f)) / pfVar21->fr_var;\n        pfVar16->fr_fix = 0;\n        pfVar16->fr_offset = lVar17;\n        lVar20 = 1L << ((byte)pfVar21->fr_offset & 0x3f);\n        if (lVar17 * pfVar16->fr_var - lVar20 != 0) {\n          pfVar16->fr_offset = lVar20;\n          pfVar16->fr_var = 1;\n        }\n        uVar28 = uVar28 + lVar20;\n        pfVar16->fr_address = aVar27 - (uVar28 + lVar22);\n        pfVar16->field_0x5a = pfVar16->field_0x5a & 0xfe | pfVar16->field_0x5a & 1 ^ 1;\n        pfVar21->fr_next = pfVar16;\n        goto LAB_00131409;\n      }\n      pfVar16 = pfVar21->fr_next;\n      lVar22 = lVar22 + uVar28;\n      goto LAB_0013137d;\n    case rs_org:\n      if (psVar4 != (symbolS *)0x0) {\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (paVar14->vma != 0) {\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/write.c",0xb80,"relax_segment");\n        }\n        vVar15 = S_GET_VALUE(psVar4);\n        uVar28 = uVar28 + vVar15;\n      }\n      pfVar16 = pfVar21->fr_next;\n      if (pfVar16 == (fragS *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/write.c",0xb84,"relax_segment");\n      }\n      aVar5 = pfVar16->fr_address;\n      if (uVar28 < aVar3 + pfVar21->fr_fix) {\n        if (pass < 2) goto code_r0x00131269;\n        pcVar18 = (char *)dcgettext(0,"attempt to move .org backwards",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_type = rs_align;\n        pfVar21->fr_subtype = 0;\n        pfVar21->fr_offset = 0;\n        pfVar21->fr_fix = aVar5 - aVar27;\n        pfVar16 = pfVar21->fr_next;\n        goto LAB_001311e7;\n      }\n      uVar28 = uVar28 - (aVar5 + lVar22);\nLAB_00131409:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\n        goto LAB_00131375;\n      }\n      pfVar21 = pfVar16;\n      aVar27 = pfVar16->fr_address;\n      goto LAB_00131000;\n    case rs_space:\n    case rs_space_nop:\n      if (psVar4 != (symbolS *)0x0) {\n        vVar15 = S_GET_VALUE(psVar4);\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (((paVar14 == (segT)(_bfd_std_section + 0x230)) &&\n            (iVar10 = S_IS_COMMON(psVar4), iVar10 == 0)) &&\n           (iVar10 = S_IS_DEFINED(psVar4), iVar10 != 0)) {\n          if ((long)vVar15 < 0) {\n            if (pass < 2) {\n              pfVar16 = pfVar21->fr_next;\n              local_54 = 1;\n            }\n            else {\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }\n            goto LAB_001311e7;\n          }\n          pfVar16 = pfVar21->fr_next;\n          uVar28 = ((pfVar21->fr_fix + aVar27) - pfVar16->fr_address) + vVar15;\n          goto LAB_00131409;\n        }\n        pcVar18 = (char *)dcgettext(0,".space specifies non-absolute value",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_symbol = (symbolS *)0x0;\n      }\n    case rs_fill:\n    case rs_machine_dependent:\nswitchD_00131039_caseD_1:\n      pfVar16 = pfVar21->fr_next;\nLAB_001311e7:\n      if (pfVar16 == (fragS *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      pfVar21 = pfVar16;\n      aVar27 = pfVar16->fr_address;\n      goto LAB_00131000;\n    case rs_leb128:\n      vVar15 = resolve_symbol_value(psVar4);\n      uVar11 = sizeof_leb128(vVar15,pfVar21->fr_subtype);\n      uVar28 = (ulong)uVar11 - pfVar21->fr_offset;\n      pfVar21->fr_offset = (ulong)uVar11;\n      goto LAB_001312d8;\n    case rs_cfa:\n      iVar10 = eh_frame_relax_frag(pfVar21);\n      uVar28 = (ulong)iVar10;\nLAB_001312d8:\n      pfVar16 = pfVar21->fr_next;\njoined_r0x00131369:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\nLAB_00131375:\n        lVar22 = lVar22 + uVar28;\n        if (rVar19 == rs_leb128) {\nLAB_001313e8:\n          uVar25 = uVar25 + 0x10;\n          bVar8 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;\n          uVar25 = 0;\n          bVar8 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (pfVar16 != (fragS *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar22 == 0) && ((uVar25 & 0x10) == 0)) {\n        uVar11 = uVar25 + 1;\n        uVar24 = uVar25 & 0xfffffff0;\n        uVar25 = 0;\n        if (uVar24 != 0) {\n          uVar25 = uVar11;\n        }\n      }\n      else {\n        uVar25 = 0;\n      }\n      if (!bVar8) {\n        do {\n          if (segment_frag_root->last_fr_address != segment_frag_root->fr_address) {\n            segment_frag_root->last_fr_address = segment_frag_root->fr_address;\n            local_54 = 1;\n          }\n          segment_frag_root = segment_frag_root->fr_next;\n        } while (segment_frag_root != (frag *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        pcVar18 = segment->name;\n        format = (char *)dcgettext(0,\n                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                                   ,5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(format,pcVar18);\n      }\n      break;\n    case rs_dwarf2dbg:\n      iVar10 = dwarf2dbg_relax_frag(pfVar21);\n      pfVar16 = pfVar21->fr_next;\n      uVar28 = (ulong)iVar10;\n      goto joined_r0x00131369;\n    }" switch (parenthesized_expression "(rVar19)" ( identifier )) (compound_statement "{\n    case rs_dummy:\n    case rs_broken_word:\n    case rs_fill_nop:\n    default:\n      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar18,(ulong)rVar19,0xbf4,"../../gas/write.c");\n    case rs_align:\n    case rs_align_code:\n    case rs_align_test:\n      uVar28 = -1L << ((byte)uVar28 & 0x3f);\n      lVar17 = pfVar21->fr_fix + aVar27;\n      lVar20 = aVar3 + pfVar21->fr_fix;\n      uVar13 = (ulong)pfVar21->fr_subtype;\n      uVar23 = lVar17 + ~uVar28 & uVar28;\n      uVar12 = (lVar20 + ~uVar28 & uVar28) - lVar20;\n      if (pfVar21->fr_subtype == 0) {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n      }\n      else if (uVar13 < uVar23 - lVar17) {\n        uVar28 = uVar12;\n        if (uVar13 < uVar12) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n        if (uVar13 < uVar12) {\n          uVar12 = 0;\n          uVar28 = lVar17 - uVar23;\n        }\n      }\n      if (-1 < (long)uVar28) goto LAB_001312d8;\n      if (((uVar25 & 0x10) != 0) && ((uVar25 & 0xe) != 0)) {\n                    /* WARNING: Load size is inaccurate */\n        lVar17 = *segment->userdata;\n        pfVar16 = frag_alloc((obstack *)(lVar17 + 0x30));\n        lVar20 = pfVar21->fr_var + *(long *)(lVar17 + 0x48);\n        *(long *)(lVar17 + 0x48) = lVar20;\n        if (lVar20 == *(long *)(lVar17 + 0x40)) {\n          *(byte *)(lVar17 + 0x80) = *(byte *)(lVar17 + 0x80) | 2;\n        }\n        uVar23 = lVar20 + *(ulong *)(lVar17 + 0x60) & ~*(ulong *)(lVar17 + 0x60);\n        uVar13 = *(ulong *)(lVar17 + 0x50);\n        *(ulong *)(lVar17 + 0x48) = uVar23;\n        if (uVar13 - *(long *)(lVar17 + 0x38) < uVar23 - *(long *)(lVar17 + 0x38)) {\n          *(ulong *)(lVar17 + 0x48) = uVar13;\n          uVar23 = uVar13;\n        }\n        *(ulong *)(lVar17 + 0x40) = uVar23;\n        aVar27 = pfVar21->last_fr_address;\n        pfVar16->fr_address = pfVar21->fr_address;\n        pfVar16->last_fr_address = aVar27;\n        oVar6 = pfVar21->fr_var;\n        pfVar16->fr_fix = pfVar21->fr_fix;\n        pfVar16->fr_var = oVar6;\n        psVar4 = pfVar21->fr_symbol;\n        pfVar16->fr_offset = pfVar21->fr_offset;\n        pfVar16->fr_symbol = psVar4;\n        pfVar7 = pfVar21->fr_next;\n        pfVar16->fr_opcode = pfVar21->fr_opcode;\n        pfVar16->fr_next = pfVar7;\n        uVar11 = pfVar21->fr_line;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x4c;\n        pfVar16->fr_file = pfVar21->fr_file;\n        pfVar16->fr_line = uVar11;\n        *(undefined4 *)&pfVar16->field_0x4c = uVar9;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x58;\n        rVar19 = pfVar21->fr_type;\n        pfVar16->line = pfVar21->line;\n        *(undefined4 *)&pfVar16->field_0x58 = uVar9;\n        pfVar16->fr_type = rVar19;\n        pfVar16->fr_subtype = pfVar21->fr_subtype;\n        memcpy(pfVar16->fr_literal,pfVar21->fr_literal + pfVar21->fr_fix,pfVar21->fr_var);\n        oVar6 = pfVar21->fr_offset;\n        aVar27 = uVar12 + aVar3 + pfVar21->fr_fix;\n        pfVar16->fr_type = rs_fill;\n        pfVar16->fr_address = aVar27;\n        lVar17 = (1L << ((byte)oVar6 & 0x3f)) / pfVar21->fr_var;\n        pfVar16->fr_fix = 0;\n        pfVar16->fr_offset = lVar17;\n        lVar20 = 1L << ((byte)pfVar21->fr_offset & 0x3f);\n        if (lVar17 * pfVar16->fr_var - lVar20 != 0) {\n          pfVar16->fr_offset = lVar20;\n          pfVar16->fr_var = 1;\n        }\n        uVar28 = uVar28 + lVar20;\n        pfVar16->fr_address = aVar27 - (uVar28 + lVar22);\n        pfVar16->field_0x5a = pfVar16->field_0x5a & 0xfe | pfVar16->field_0x5a & 1 ^ 1;\n        pfVar21->fr_next = pfVar16;\n        goto LAB_00131409;\n      }\n      pfVar16 = pfVar21->fr_next;\n      lVar22 = lVar22 + uVar28;\n      goto LAB_0013137d;\n    case rs_org:\n      if (psVar4 != (symbolS *)0x0) {\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (paVar14->vma != 0) {\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/write.c",0xb80,"relax_segment");\n        }\n        vVar15 = S_GET_VALUE(psVar4);\n        uVar28 = uVar28 + vVar15;\n      }\n      pfVar16 = pfVar21->fr_next;\n      if (pfVar16 == (fragS *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/write.c",0xb84,"relax_segment");\n      }\n      aVar5 = pfVar16->fr_address;\n      if (uVar28 < aVar3 + pfVar21->fr_fix) {\n        if (pass < 2) goto code_r0x00131269;\n        pcVar18 = (char *)dcgettext(0,"attempt to move .org backwards",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_type = rs_align;\n        pfVar21->fr_subtype = 0;\n        pfVar21->fr_offset = 0;\n        pfVar21->fr_fix = aVar5 - aVar27;\n        pfVar16 = pfVar21->fr_next;\n        goto LAB_001311e7;\n      }\n      uVar28 = uVar28 - (aVar5 + lVar22);\nLAB_00131409:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\n        goto LAB_00131375;\n      }\n      pfVar21 = pfVar16;\n      aVar27 = pfVar16->fr_address;\n      goto LAB_00131000;\n    case rs_space:\n    case rs_space_nop:\n      if (psVar4 != (symbolS *)0x0) {\n        vVar15 = S_GET_VALUE(psVar4);\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (((paVar14 == (segT)(_bfd_std_section + 0x230)) &&\n            (iVar10 = S_IS_COMMON(psVar4), iVar10 == 0)) &&\n           (iVar10 = S_IS_DEFINED(psVar4), iVar10 != 0)) {\n          if ((long)vVar15 < 0) {\n            if (pass < 2) {\n              pfVar16 = pfVar21->fr_next;\n              local_54 = 1;\n            }\n            else {\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }\n            goto LAB_001311e7;\n          }\n          pfVar16 = pfVar21->fr_next;\n          uVar28 = ((pfVar21->fr_fix + aVar27) - pfVar16->fr_address) + vVar15;\n          goto LAB_00131409;\n        }\n        pcVar18 = (char *)dcgettext(0,".space specifies non-absolute value",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_symbol = (symbolS *)0x0;\n      }\n    case rs_fill:\n    case rs_machine_dependent:\nswitchD_00131039_caseD_1:\n      pfVar16 = pfVar21->fr_next;\nLAB_001311e7:\n      if (pfVar16 == (fragS *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      pfVar21 = pfVar16;\n      aVar27 = pfVar16->fr_address;\n      goto LAB_00131000;\n    case rs_leb128:\n      vVar15 = resolve_symbol_value(psVar4);\n      uVar11 = sizeof_leb128(vVar15,pfVar21->fr_subtype);\n      uVar28 = (ulong)uVar11 - pfVar21->fr_offset;\n      pfVar21->fr_offset = (ulong)uVar11;\n      goto LAB_001312d8;\n    case rs_cfa:\n      iVar10 = eh_frame_relax_frag(pfVar21);\n      uVar28 = (ulong)iVar10;\nLAB_001312d8:\n      pfVar16 = pfVar21->fr_next;\njoined_r0x00131369:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\nLAB_00131375:\n        lVar22 = lVar22 + uVar28;\n        if (rVar19 == rs_leb128) {\nLAB_001313e8:\n          uVar25 = uVar25 + 0x10;\n          bVar8 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;\n          uVar25 = 0;\n          bVar8 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (pfVar16 != (fragS *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar22 == 0) && ((uVar25 & 0x10) == 0)) {\n        uVar11 = uVar25 + 1;\n        uVar24 = uVar25 & 0xfffffff0;\n        uVar25 = 0;\n        if (uVar24 != 0) {\n          uVar25 = uVar11;\n        }\n      }\n      else {\n        uVar25 = 0;\n      }\n      if (!bVar8) {\n        do {\n          if (segment_frag_root->last_fr_address != segment_frag_root->fr_address) {\n            segment_frag_root->last_fr_address = segment_frag_root->fr_address;\n            local_54 = 1;\n          }\n          segment_frag_root = segment_frag_root->fr_next;\n        } while (segment_frag_root != (frag *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        pcVar18 = segment->name;\n        format = (char *)dcgettext(0,\n                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                                   ,5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(format,pcVar18);\n      }\n      break;\n    case rs_dwarf2dbg:\n      iVar10 = dwarf2dbg_relax_frag(pfVar21);\n      pfVar16 = pfVar21->fr_next;\n      uVar28 = (ulong)iVar10;\n      goto joined_r0x00131369;\n    }" { (case_statement "case rs_dummy:" case identifier :) (case_statement "case rs_broken_word:" case identifier :) (case_statement "case rs_fill_nop:" case identifier :) (case_statement "default:\n      pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar18,(ulong)rVar19,0xbf4,"../../gas/write.c");" default : (expression_statement "pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" identifier (argument_list "(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" ( number_literal , (string_literal ""Case value %ld unexpected at line %d of file \"%s\"\n"" " string_content escape_sequence string_content escape_sequence escape_sequence ") , number_literal ))))) ;) comment (expression_statement "as_fatal(pcVar18,(ulong)rVar19,0xbf4,"../../gas/write.c");" (call_expression "as_fatal(pcVar18,(ulong)rVar19,0xbf4,"../../gas/write.c")" identifier (argument_list "(pcVar18,(ulong)rVar19,0xbf4,"../../gas/write.c")" ( identifier , (cast_expression "(ulong)rVar19" ( (type_descriptor "ulong" type_identifier) ) identifier) , number_literal , (string_literal ""../../gas/write.c"" " string_content ") ))) ;)) (case_statement "case rs_align:" case identifier :) (case_statement "case rs_align_code:" case identifier :) (case_statement "case rs_align_test:\n      uVar28 = -1L << ((byte)uVar28 & 0x3f);\n      lVar17 = pfVar21->fr_fix + aVar27;\n      lVar20 = aVar3 + pfVar21->fr_fix;\n      uVar13 = (ulong)pfVar21->fr_subtype;\n      uVar23 = lVar17 + ~uVar28 & uVar28;\n      uVar12 = (lVar20 + ~uVar28 & uVar28) - lVar20;\n      if (pfVar21->fr_subtype == 0) {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n      }\n      else if (uVar13 < uVar23 - lVar17) {\n        uVar28 = uVar12;\n        if (uVar13 < uVar12) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n        if (uVar13 < uVar12) {\n          uVar12 = 0;\n          uVar28 = lVar17 - uVar23;\n        }\n      }\n      if (-1 < (long)uVar28) goto LAB_001312d8;\n      if (((uVar25 & 0x10) != 0) && ((uVar25 & 0xe) != 0)) {\n                    /* WARNING: Load size is inaccurate */\n        lVar17 = *segment->userdata;\n        pfVar16 = frag_alloc((obstack *)(lVar17 + 0x30));\n        lVar20 = pfVar21->fr_var + *(long *)(lVar17 + 0x48);\n        *(long *)(lVar17 + 0x48) = lVar20;\n        if (lVar20 == *(long *)(lVar17 + 0x40)) {\n          *(byte *)(lVar17 + 0x80) = *(byte *)(lVar17 + 0x80) | 2;\n        }\n        uVar23 = lVar20 + *(ulong *)(lVar17 + 0x60) & ~*(ulong *)(lVar17 + 0x60);\n        uVar13 = *(ulong *)(lVar17 + 0x50);\n        *(ulong *)(lVar17 + 0x48) = uVar23;\n        if (uVar13 - *(long *)(lVar17 + 0x38) < uVar23 - *(long *)(lVar17 + 0x38)) {\n          *(ulong *)(lVar17 + 0x48) = uVar13;\n          uVar23 = uVar13;\n        }\n        *(ulong *)(lVar17 + 0x40) = uVar23;\n        aVar27 = pfVar21->last_fr_address;\n        pfVar16->fr_address = pfVar21->fr_address;\n        pfVar16->last_fr_address = aVar27;\n        oVar6 = pfVar21->fr_var;\n        pfVar16->fr_fix = pfVar21->fr_fix;\n        pfVar16->fr_var = oVar6;\n        psVar4 = pfVar21->fr_symbol;\n        pfVar16->fr_offset = pfVar21->fr_offset;\n        pfVar16->fr_symbol = psVar4;\n        pfVar7 = pfVar21->fr_next;\n        pfVar16->fr_opcode = pfVar21->fr_opcode;\n        pfVar16->fr_next = pfVar7;\n        uVar11 = pfVar21->fr_line;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x4c;\n        pfVar16->fr_file = pfVar21->fr_file;\n        pfVar16->fr_line = uVar11;\n        *(undefined4 *)&pfVar16->field_0x4c = uVar9;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x58;\n        rVar19 = pfVar21->fr_type;\n        pfVar16->line = pfVar21->line;\n        *(undefined4 *)&pfVar16->field_0x58 = uVar9;\n        pfVar16->fr_type = rVar19;\n        pfVar16->fr_subtype = pfVar21->fr_subtype;\n        memcpy(pfVar16->fr_literal,pfVar21->fr_literal + pfVar21->fr_fix,pfVar21->fr_var);\n        oVar6 = pfVar21->fr_offset;\n        aVar27 = uVar12 + aVar3 + pfVar21->fr_fix;\n        pfVar16->fr_type = rs_fill;\n        pfVar16->fr_address = aVar27;\n        lVar17 = (1L << ((byte)oVar6 & 0x3f)) / pfVar21->fr_var;\n        pfVar16->fr_fix = 0;\n        pfVar16->fr_offset = lVar17;\n        lVar20 = 1L << ((byte)pfVar21->fr_offset & 0x3f);\n        if (lVar17 * pfVar16->fr_var - lVar20 != 0) {\n          pfVar16->fr_offset = lVar20;\n          pfVar16->fr_var = 1;\n        }\n        uVar28 = uVar28 + lVar20;\n        pfVar16->fr_address = aVar27 - (uVar28 + lVar22);\n        pfVar16->field_0x5a = pfVar16->field_0x5a & 0xfe | pfVar16->field_0x5a & 1 ^ 1;\n        pfVar21->fr_next = pfVar16;\n        goto LAB_00131409;\n      }\n      pfVar16 = pfVar21->fr_next;\n      lVar22 = lVar22 + uVar28;\n      goto LAB_0013137d;" case identifier : (expression_statement "uVar28 = -1L << ((byte)uVar28 & 0x3f);" (assignment_expression "uVar28 = -1L << ((byte)uVar28 & 0x3f)" identifier = (binary_expression "-1L << ((byte)uVar28 & 0x3f)" number_literal << (parenthesized_expression "((byte)uVar28 & 0x3f)" ( (binary_expression "(byte)uVar28 & 0x3f" (cast_expression "(byte)uVar28" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "lVar17 = pfVar21->fr_fix + aVar27;" (assignment_expression "lVar17 = pfVar21->fr_fix + aVar27" identifier = (binary_expression "pfVar21->fr_fix + aVar27" (field_expression "pfVar21->fr_fix" identifier -> field_identifier) + identifier)) ;) (expression_statement "lVar20 = aVar3 + pfVar21->fr_fix;" (assignment_expression "lVar20 = aVar3 + pfVar21->fr_fix" identifier = (binary_expression "aVar3 + pfVar21->fr_fix" identifier + (field_expression "pfVar21->fr_fix" identifier -> field_identifier))) ;) (expression_statement "uVar13 = (ulong)pfVar21->fr_subtype;" (assignment_expression "uVar13 = (ulong)pfVar21->fr_subtype" identifier = (cast_expression "(ulong)pfVar21->fr_subtype" ( (type_descriptor "ulong" type_identifier) ) (field_expression "pfVar21->fr_subtype" identifier -> field_identifier))) ;) (expression_statement "uVar23 = lVar17 + ~uVar28 & uVar28;" (assignment_expression "uVar23 = lVar17 + ~uVar28 & uVar28" identifier = (binary_expression "lVar17 + ~uVar28 & uVar28" (binary_expression "lVar17 + ~uVar28" identifier + (unary_expression "~uVar28" ~ identifier)) & identifier)) ;) (expression_statement "uVar12 = (lVar20 + ~uVar28 & uVar28) - lVar20;" (assignment_expression "uVar12 = (lVar20 + ~uVar28 & uVar28) - lVar20" identifier = (binary_expression "(lVar20 + ~uVar28 & uVar28) - lVar20" (parenthesized_expression "(lVar20 + ~uVar28 & uVar28)" ( (binary_expression "lVar20 + ~uVar28 & uVar28" (binary_expression "lVar20 + ~uVar28" identifier + (unary_expression "~uVar28" ~ identifier)) & identifier) )) - identifier)) ;) (if_statement "if (pfVar21->fr_subtype == 0) {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n      }\n      else if (uVar13 < uVar23 - lVar17) {\n        uVar28 = uVar12;\n        if (uVar13 < uVar12) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n        if (uVar13 < uVar12) {\n          uVar12 = 0;\n          uVar28 = lVar17 - uVar23;\n        }\n      }" if (parenthesized_expression "(pfVar21->fr_subtype == 0)" ( (binary_expression "pfVar21->fr_subtype == 0" (field_expression "pfVar21->fr_subtype" identifier -> field_identifier) == number_literal) )) (compound_statement "{\n        uVar28 = (lVar17 - uVar23) + uVar12;\n      }" { (expression_statement "uVar28 = (lVar17 - uVar23) + uVar12;" (assignment_expression "uVar28 = (lVar17 - uVar23) + uVar12" identifier = (binary_expression "(lVar17 - uVar23) + uVar12" (parenthesized_expression "(lVar17 - uVar23)" ( (binary_expression "lVar17 - uVar23" identifier - identifier) )) + identifier)) ;) }) (else_clause "else if (uVar13 < uVar23 - lVar17) {\n        uVar28 = uVar12;\n        if (uVar13 < uVar12) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n        if (uVar13 < uVar12) {\n          uVar12 = 0;\n          uVar28 = lVar17 - uVar23;\n        }\n      }" else (if_statement "if (uVar13 < uVar23 - lVar17) {\n        uVar28 = uVar12;\n        if (uVar13 < uVar12) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n        if (uVar13 < uVar12) {\n          uVar12 = 0;\n          uVar28 = lVar17 - uVar23;\n        }\n      }" if (parenthesized_expression "(uVar13 < uVar23 - lVar17)" ( (binary_expression "uVar13 < uVar23 - lVar17" identifier < (binary_expression "uVar23 - lVar17" identifier - identifier)) )) (compound_statement "{\n        uVar28 = uVar12;\n        if (uVar13 < uVar12) goto switchD_00131039_caseD_1;\n      }" { (expression_statement "uVar28 = uVar12;" (assignment_expression "uVar28 = uVar12" identifier = identifier) ;) (if_statement "if (uVar13 < uVar12) goto switchD_00131039_caseD_1;" if (parenthesized_expression "(uVar13 < uVar12)" ( (binary_expression "uVar13 < uVar12" identifier < identifier) )) (goto_statement "goto switchD_00131039_caseD_1;" goto statement_identifier ;)) }) (else_clause "else {\n        uVar28 = (lVar17 - uVar23) + uVar12;\n        if (uVar13 < uVar12) {\n          uVar12 = 0;\n          uVar28 = lVar17 - uVar23;\n        }\n      }" else (compound_statement "{\n        uVar28 = (lVar17 - uVar23) + uVar12;\n        if (uVar13 < uVar12) {\n          uVar12 = 0;\n          uVar28 = lVar17 - uVar23;\n        }\n      }" { (expression_statement "uVar28 = (lVar17 - uVar23) + uVar12;" (assignment_expression "uVar28 = (lVar17 - uVar23) + uVar12" identifier = (binary_expression "(lVar17 - uVar23) + uVar12" (parenthesized_expression "(lVar17 - uVar23)" ( (binary_expression "lVar17 - uVar23" identifier - identifier) )) + identifier)) ;) (if_statement "if (uVar13 < uVar12) {\n          uVar12 = 0;\n          uVar28 = lVar17 - uVar23;\n        }" if (parenthesized_expression "(uVar13 < uVar12)" ( (binary_expression "uVar13 < uVar12" identifier < identifier) )) (compound_statement "{\n          uVar12 = 0;\n          uVar28 = lVar17 - uVar23;\n        }" { (expression_statement "uVar12 = 0;" (assignment_expression "uVar12 = 0" identifier = number_literal) ;) (expression_statement "uVar28 = lVar17 - uVar23;" (assignment_expression "uVar28 = lVar17 - uVar23" identifier = (binary_expression "lVar17 - uVar23" identifier - identifier)) ;) })) }))))) (if_statement "if (-1 < (long)uVar28) goto LAB_001312d8;" if (parenthesized_expression "(-1 < (long)uVar28)" ( (binary_expression "-1 < (long)uVar28" number_literal < (cast_expression "(long)uVar28" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )) (goto_statement "goto LAB_001312d8;" goto statement_identifier ;)) (if_statement "if (((uVar25 & 0x10) != 0) && ((uVar25 & 0xe) != 0)) {\n                    /* WARNING: Load size is inaccurate */\n        lVar17 = *segment->userdata;\n        pfVar16 = frag_alloc((obstack *)(lVar17 + 0x30));\n        lVar20 = pfVar21->fr_var + *(long *)(lVar17 + 0x48);\n        *(long *)(lVar17 + 0x48) = lVar20;\n        if (lVar20 == *(long *)(lVar17 + 0x40)) {\n          *(byte *)(lVar17 + 0x80) = *(byte *)(lVar17 + 0x80) | 2;\n        }\n        uVar23 = lVar20 + *(ulong *)(lVar17 + 0x60) & ~*(ulong *)(lVar17 + 0x60);\n        uVar13 = *(ulong *)(lVar17 + 0x50);\n        *(ulong *)(lVar17 + 0x48) = uVar23;\n        if (uVar13 - *(long *)(lVar17 + 0x38) < uVar23 - *(long *)(lVar17 + 0x38)) {\n          *(ulong *)(lVar17 + 0x48) = uVar13;\n          uVar23 = uVar13;\n        }\n        *(ulong *)(lVar17 + 0x40) = uVar23;\n        aVar27 = pfVar21->last_fr_address;\n        pfVar16->fr_address = pfVar21->fr_address;\n        pfVar16->last_fr_address = aVar27;\n        oVar6 = pfVar21->fr_var;\n        pfVar16->fr_fix = pfVar21->fr_fix;\n        pfVar16->fr_var = oVar6;\n        psVar4 = pfVar21->fr_symbol;\n        pfVar16->fr_offset = pfVar21->fr_offset;\n        pfVar16->fr_symbol = psVar4;\n        pfVar7 = pfVar21->fr_next;\n        pfVar16->fr_opcode = pfVar21->fr_opcode;\n        pfVar16->fr_next = pfVar7;\n        uVar11 = pfVar21->fr_line;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x4c;\n        pfVar16->fr_file = pfVar21->fr_file;\n        pfVar16->fr_line = uVar11;\n        *(undefined4 *)&pfVar16->field_0x4c = uVar9;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x58;\n        rVar19 = pfVar21->fr_type;\n        pfVar16->line = pfVar21->line;\n        *(undefined4 *)&pfVar16->field_0x58 = uVar9;\n        pfVar16->fr_type = rVar19;\n        pfVar16->fr_subtype = pfVar21->fr_subtype;\n        memcpy(pfVar16->fr_literal,pfVar21->fr_literal + pfVar21->fr_fix,pfVar21->fr_var);\n        oVar6 = pfVar21->fr_offset;\n        aVar27 = uVar12 + aVar3 + pfVar21->fr_fix;\n        pfVar16->fr_type = rs_fill;\n        pfVar16->fr_address = aVar27;\n        lVar17 = (1L << ((byte)oVar6 & 0x3f)) / pfVar21->fr_var;\n        pfVar16->fr_fix = 0;\n        pfVar16->fr_offset = lVar17;\n        lVar20 = 1L << ((byte)pfVar21->fr_offset & 0x3f);\n        if (lVar17 * pfVar16->fr_var - lVar20 != 0) {\n          pfVar16->fr_offset = lVar20;\n          pfVar16->fr_var = 1;\n        }\n        uVar28 = uVar28 + lVar20;\n        pfVar16->fr_address = aVar27 - (uVar28 + lVar22);\n        pfVar16->field_0x5a = pfVar16->field_0x5a & 0xfe | pfVar16->field_0x5a & 1 ^ 1;\n        pfVar21->fr_next = pfVar16;\n        goto LAB_00131409;\n      }" if (parenthesized_expression "(((uVar25 & 0x10) != 0) && ((uVar25 & 0xe) != 0))" ( (binary_expression "((uVar25 & 0x10) != 0) && ((uVar25 & 0xe) != 0)" (parenthesized_expression "((uVar25 & 0x10) != 0)" ( (binary_expression "(uVar25 & 0x10) != 0" (parenthesized_expression "(uVar25 & 0x10)" ( (binary_expression "uVar25 & 0x10" identifier & number_literal) )) != number_literal) )) && (parenthesized_expression "((uVar25 & 0xe) != 0)" ( (binary_expression "(uVar25 & 0xe) != 0" (parenthesized_expression "(uVar25 & 0xe)" ( (binary_expression "uVar25 & 0xe" identifier & number_literal) )) != number_literal) ))) )) (compound_statement "{\n                    /* WARNING: Load size is inaccurate */\n        lVar17 = *segment->userdata;\n        pfVar16 = frag_alloc((obstack *)(lVar17 + 0x30));\n        lVar20 = pfVar21->fr_var + *(long *)(lVar17 + 0x48);\n        *(long *)(lVar17 + 0x48) = lVar20;\n        if (lVar20 == *(long *)(lVar17 + 0x40)) {\n          *(byte *)(lVar17 + 0x80) = *(byte *)(lVar17 + 0x80) | 2;\n        }\n        uVar23 = lVar20 + *(ulong *)(lVar17 + 0x60) & ~*(ulong *)(lVar17 + 0x60);\n        uVar13 = *(ulong *)(lVar17 + 0x50);\n        *(ulong *)(lVar17 + 0x48) = uVar23;\n        if (uVar13 - *(long *)(lVar17 + 0x38) < uVar23 - *(long *)(lVar17 + 0x38)) {\n          *(ulong *)(lVar17 + 0x48) = uVar13;\n          uVar23 = uVar13;\n        }\n        *(ulong *)(lVar17 + 0x40) = uVar23;\n        aVar27 = pfVar21->last_fr_address;\n        pfVar16->fr_address = pfVar21->fr_address;\n        pfVar16->last_fr_address = aVar27;\n        oVar6 = pfVar21->fr_var;\n        pfVar16->fr_fix = pfVar21->fr_fix;\n        pfVar16->fr_var = oVar6;\n        psVar4 = pfVar21->fr_symbol;\n        pfVar16->fr_offset = pfVar21->fr_offset;\n        pfVar16->fr_symbol = psVar4;\n        pfVar7 = pfVar21->fr_next;\n        pfVar16->fr_opcode = pfVar21->fr_opcode;\n        pfVar16->fr_next = pfVar7;\n        uVar11 = pfVar21->fr_line;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x4c;\n        pfVar16->fr_file = pfVar21->fr_file;\n        pfVar16->fr_line = uVar11;\n        *(undefined4 *)&pfVar16->field_0x4c = uVar9;\n        uVar9 = *(undefined4 *)&pfVar21->field_0x58;\n        rVar19 = pfVar21->fr_type;\n        pfVar16->line = pfVar21->line;\n        *(undefined4 *)&pfVar16->field_0x58 = uVar9;\n        pfVar16->fr_type = rVar19;\n        pfVar16->fr_subtype = pfVar21->fr_subtype;\n        memcpy(pfVar16->fr_literal,pfVar21->fr_literal + pfVar21->fr_fix,pfVar21->fr_var);\n        oVar6 = pfVar21->fr_offset;\n        aVar27 = uVar12 + aVar3 + pfVar21->fr_fix;\n        pfVar16->fr_type = rs_fill;\n        pfVar16->fr_address = aVar27;\n        lVar17 = (1L << ((byte)oVar6 & 0x3f)) / pfVar21->fr_var;\n        pfVar16->fr_fix = 0;\n        pfVar16->fr_offset = lVar17;\n        lVar20 = 1L << ((byte)pfVar21->fr_offset & 0x3f);\n        if (lVar17 * pfVar16->fr_var - lVar20 != 0) {\n          pfVar16->fr_offset = lVar20;\n          pfVar16->fr_var = 1;\n        }\n        uVar28 = uVar28 + lVar20;\n        pfVar16->fr_address = aVar27 - (uVar28 + lVar22);\n        pfVar16->field_0x5a = pfVar16->field_0x5a & 0xfe | pfVar16->field_0x5a & 1 ^ 1;\n        pfVar21->fr_next = pfVar16;\n        goto LAB_00131409;\n      }" { comment (expression_statement "lVar17 = *segment->userdata;" (assignment_expression "lVar17 = *segment->userdata" identifier = (pointer_expression "*segment->userdata" * (field_expression "segment->userdata" identifier -> field_identifier))) ;) (expression_statement "pfVar16 = frag_alloc((obstack *)(lVar17 + 0x30));" (assignment_expression "pfVar16 = frag_alloc((obstack *)(lVar17 + 0x30))" identifier = (call_expression "frag_alloc((obstack *)(lVar17 + 0x30))" identifier (argument_list "((obstack *)(lVar17 + 0x30))" ( (cast_expression "(obstack *)(lVar17 + 0x30)" ( (type_descriptor "obstack *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x30)" ( (binary_expression "lVar17 + 0x30" identifier + number_literal) ))) )))) ;) (expression_statement "lVar20 = pfVar21->fr_var + *(long *)(lVar17 + 0x48);" (assignment_expression "lVar20 = pfVar21->fr_var + *(long *)(lVar17 + 0x48)" identifier = (binary_expression "pfVar21->fr_var + *(long *)(lVar17 + 0x48)" (field_expression "pfVar21->fr_var" identifier -> field_identifier) + (pointer_expression "*(long *)(lVar17 + 0x48)" * (cast_expression "(long *)(lVar17 + 0x48)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x48)" ( (binary_expression "lVar17 + 0x48" identifier + number_literal) )))))) ;) (expression_statement "*(long *)(lVar17 + 0x48) = lVar20;" (assignment_expression "*(long *)(lVar17 + 0x48) = lVar20" (pointer_expression "*(long *)(lVar17 + 0x48)" * (cast_expression "(long *)(lVar17 + 0x48)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x48)" ( (binary_expression "lVar17 + 0x48" identifier + number_literal) )))) = identifier) ;) (if_statement "if (lVar20 == *(long *)(lVar17 + 0x40)) {\n          *(byte *)(lVar17 + 0x80) = *(byte *)(lVar17 + 0x80) | 2;\n        }" if (parenthesized_expression "(lVar20 == *(long *)(lVar17 + 0x40))" ( (binary_expression "lVar20 == *(long *)(lVar17 + 0x40)" identifier == (pointer_expression "*(long *)(lVar17 + 0x40)" * (cast_expression "(long *)(lVar17 + 0x40)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x40)" ( (binary_expression "lVar17 + 0x40" identifier + number_literal) ))))) )) (compound_statement "{\n          *(byte *)(lVar17 + 0x80) = *(byte *)(lVar17 + 0x80) | 2;\n        }" { (expression_statement "*(byte *)(lVar17 + 0x80) = *(byte *)(lVar17 + 0x80) | 2;" (assignment_expression "*(byte *)(lVar17 + 0x80) = *(byte *)(lVar17 + 0x80) | 2" (pointer_expression "*(byte *)(lVar17 + 0x80)" * (cast_expression "(byte *)(lVar17 + 0x80)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x80)" ( (binary_expression "lVar17 + 0x80" identifier + number_literal) )))) = (binary_expression "*(byte *)(lVar17 + 0x80) | 2" (pointer_expression "*(byte *)(lVar17 + 0x80)" * (cast_expression "(byte *)(lVar17 + 0x80)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x80)" ( (binary_expression "lVar17 + 0x80" identifier + number_literal) )))) | number_literal)) ;) })) (expression_statement "uVar23 = lVar20 + *(ulong *)(lVar17 + 0x60) & ~*(ulong *)(lVar17 + 0x60);" (assignment_expression "uVar23 = lVar20 + *(ulong *)(lVar17 + 0x60) & ~*(ulong *)(lVar17 + 0x60)" identifier = (binary_expression "lVar20 + *(ulong *)(lVar17 + 0x60) & ~*(ulong *)(lVar17 + 0x60)" (binary_expression "lVar20 + *(ulong *)(lVar17 + 0x60)" identifier + (pointer_expression "*(ulong *)(lVar17 + 0x60)" * (cast_expression "(ulong *)(lVar17 + 0x60)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x60)" ( (binary_expression "lVar17 + 0x60" identifier + number_literal) ))))) & (unary_expression "~*(ulong *)(lVar17 + 0x60)" ~ (pointer_expression "*(ulong *)(lVar17 + 0x60)" * (cast_expression "(ulong *)(lVar17 + 0x60)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x60)" ( (binary_expression "lVar17 + 0x60" identifier + number_literal) ))))))) ;) (expression_statement "uVar13 = *(ulong *)(lVar17 + 0x50);" (assignment_expression "uVar13 = *(ulong *)(lVar17 + 0x50)" identifier = (pointer_expression "*(ulong *)(lVar17 + 0x50)" * (cast_expression "(ulong *)(lVar17 + 0x50)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x50)" ( (binary_expression "lVar17 + 0x50" identifier + number_literal) ))))) ;) (expression_statement "*(ulong *)(lVar17 + 0x48) = uVar23;" (assignment_expression "*(ulong *)(lVar17 + 0x48) = uVar23" (pointer_expression "*(ulong *)(lVar17 + 0x48)" * (cast_expression "(ulong *)(lVar17 + 0x48)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x48)" ( (binary_expression "lVar17 + 0x48" identifier + number_literal) )))) = identifier) ;) (if_statement "if (uVar13 - *(long *)(lVar17 + 0x38) < uVar23 - *(long *)(lVar17 + 0x38)) {\n          *(ulong *)(lVar17 + 0x48) = uVar13;\n          uVar23 = uVar13;\n        }" if (parenthesized_expression "(uVar13 - *(long *)(lVar17 + 0x38) < uVar23 - *(long *)(lVar17 + 0x38))" ( (binary_expression "uVar13 - *(long *)(lVar17 + 0x38) < uVar23 - *(long *)(lVar17 + 0x38)" (binary_expression "uVar13 - *(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) ))))) < (binary_expression "uVar23 - *(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          *(ulong *)(lVar17 + 0x48) = uVar13;\n          uVar23 = uVar13;\n        }" { (expression_statement "*(ulong *)(lVar17 + 0x48) = uVar13;" (assignment_expression "*(ulong *)(lVar17 + 0x48) = uVar13" (pointer_expression "*(ulong *)(lVar17 + 0x48)" * (cast_expression "(ulong *)(lVar17 + 0x48)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x48)" ( (binary_expression "lVar17 + 0x48" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar23 = uVar13;" (assignment_expression "uVar23 = uVar13" identifier = identifier) ;) })) (expression_statement "*(ulong *)(lVar17 + 0x40) = uVar23;" (assignment_expression "*(ulong *)(lVar17 + 0x40) = uVar23" (pointer_expression "*(ulong *)(lVar17 + 0x40)" * (cast_expression "(ulong *)(lVar17 + 0x40)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x40)" ( (binary_expression "lVar17 + 0x40" identifier + number_literal) )))) = identifier) ;) (expression_statement "aVar27 = pfVar21->last_fr_address;" (assignment_expression "aVar27 = pfVar21->last_fr_address" identifier = (field_expression "pfVar21->last_fr_address" identifier -> field_identifier)) ;) (expression_statement "pfVar16->fr_address = pfVar21->fr_address;" (assignment_expression "pfVar16->fr_address = pfVar21->fr_address" (field_expression "pfVar16->fr_address" identifier -> field_identifier) = (field_expression "pfVar21->fr_address" identifier -> field_identifier)) ;) (expression_statement "pfVar16->last_fr_address = aVar27;" (assignment_expression "pfVar16->last_fr_address = aVar27" (field_expression "pfVar16->last_fr_address" identifier -> field_identifier) = identifier) ;) (expression_statement "oVar6 = pfVar21->fr_var;" (assignment_expression "oVar6 = pfVar21->fr_var" identifier = (field_expression "pfVar21->fr_var" identifier -> field_identifier)) ;) (expression_statement "pfVar16->fr_fix = pfVar21->fr_fix;" (assignment_expression "pfVar16->fr_fix = pfVar21->fr_fix" (field_expression "pfVar16->fr_fix" identifier -> field_identifier) = (field_expression "pfVar21->fr_fix" identifier -> field_identifier)) ;) (expression_statement "pfVar16->fr_var = oVar6;" (assignment_expression "pfVar16->fr_var = oVar6" (field_expression "pfVar16->fr_var" identifier -> field_identifier) = identifier) ;) (expression_statement "psVar4 = pfVar21->fr_symbol;" (assignment_expression "psVar4 = pfVar21->fr_symbol" identifier = (field_expression "pfVar21->fr_symbol" identifier -> field_identifier)) ;) (expression_statement "pfVar16->fr_offset = pfVar21->fr_offset;" (assignment_expression "pfVar16->fr_offset = pfVar21->fr_offset" (field_expression "pfVar16->fr_offset" identifier -> field_identifier) = (field_expression "pfVar21->fr_offset" identifier -> field_identifier)) ;) (expression_statement "pfVar16->fr_symbol = psVar4;" (assignment_expression "pfVar16->fr_symbol = psVar4" (field_expression "pfVar16->fr_symbol" identifier -> field_identifier) = identifier) ;) (expression_statement "pfVar7 = pfVar21->fr_next;" (assignment_expression "pfVar7 = pfVar21->fr_next" identifier = (field_expression "pfVar21->fr_next" identifier -> field_identifier)) ;) (expression_statement "pfVar16->fr_opcode = pfVar21->fr_opcode;" (assignment_expression "pfVar16->fr_opcode = pfVar21->fr_opcode" (field_expression "pfVar16->fr_opcode" identifier -> field_identifier) = (field_expression "pfVar21->fr_opcode" identifier -> field_identifier)) ;) (expression_statement "pfVar16->fr_next = pfVar7;" (assignment_expression "pfVar16->fr_next = pfVar7" (field_expression "pfVar16->fr_next" identifier -> field_identifier) = identifier) ;) (expression_statement "uVar11 = pfVar21->fr_line;" (assignment_expression "uVar11 = pfVar21->fr_line" identifier = (field_expression "pfVar21->fr_line" identifier -> field_identifier)) ;) (expression_statement "uVar9 = *(undefined4 *)&pfVar21->field_0x4c;" (assignment_expression "uVar9 = *(undefined4 *)&pfVar21->field_0x4c" identifier = (pointer_expression "*(undefined4 *)&pfVar21->field_0x4c" * (cast_expression "(undefined4 *)&pfVar21->field_0x4c" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pfVar21->field_0x4c" & (field_expression "pfVar21->field_0x4c" identifier -> field_identifier))))) ;) (expression_statement "pfVar16->fr_file = pfVar21->fr_file;" (assignment_expression "pfVar16->fr_file = pfVar21->fr_file" (field_expression "pfVar16->fr_file" identifier -> field_identifier) = (field_expression "pfVar21->fr_file" identifier -> field_identifier)) ;) (expression_statement "pfVar16->fr_line = uVar11;" (assignment_expression "pfVar16->fr_line = uVar11" (field_expression "pfVar16->fr_line" identifier -> field_identifier) = identifier) ;) (expression_statement "*(undefined4 *)&pfVar16->field_0x4c = uVar9;" (assignment_expression "*(undefined4 *)&pfVar16->field_0x4c = uVar9" (pointer_expression "*(undefined4 *)&pfVar16->field_0x4c" * (cast_expression "(undefined4 *)&pfVar16->field_0x4c" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pfVar16->field_0x4c" & (field_expression "pfVar16->field_0x4c" identifier -> field_identifier)))) = identifier) ;) (expression_statement "uVar9 = *(undefined4 *)&pfVar21->field_0x58;" (assignment_expression "uVar9 = *(undefined4 *)&pfVar21->field_0x58" identifier = (pointer_expression "*(undefined4 *)&pfVar21->field_0x58" * (cast_expression "(undefined4 *)&pfVar21->field_0x58" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pfVar21->field_0x58" & (field_expression "pfVar21->field_0x58" identifier -> field_identifier))))) ;) (expression_statement "rVar19 = pfVar21->fr_type;" (assignment_expression "rVar19 = pfVar21->fr_type" identifier = (field_expression "pfVar21->fr_type" identifier -> field_identifier)) ;) (expression_statement "pfVar16->line = pfVar21->line;" (assignment_expression "pfVar16->line = pfVar21->line" (field_expression "pfVar16->line" identifier -> field_identifier) = (field_expression "pfVar21->line" identifier -> field_identifier)) ;) (expression_statement "*(undefined4 *)&pfVar16->field_0x58 = uVar9;" (assignment_expression "*(undefined4 *)&pfVar16->field_0x58 = uVar9" (pointer_expression "*(undefined4 *)&pfVar16->field_0x58" * (cast_expression "(undefined4 *)&pfVar16->field_0x58" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&pfVar16->field_0x58" & (field_expression "pfVar16->field_0x58" identifier -> field_identifier)))) = identifier) ;) (expression_statement "pfVar16->fr_type = rVar19;" (assignment_expression "pfVar16->fr_type = rVar19" (field_expression "pfVar16->fr_type" identifier -> field_identifier) = identifier) ;) (expression_statement "pfVar16->fr_subtype = pfVar21->fr_subtype;" (assignment_expression "pfVar16->fr_subtype = pfVar21->fr_subtype" (field_expression "pfVar16->fr_subtype" identifier -> field_identifier) = (field_expression "pfVar21->fr_subtype" identifier -> field_identifier)) ;) (expression_statement "memcpy(pfVar16->fr_literal,pfVar21->fr_literal + pfVar21->fr_fix,pfVar21->fr_var);" (call_expression "memcpy(pfVar16->fr_literal,pfVar21->fr_literal + pfVar21->fr_fix,pfVar21->fr_var)" identifier (argument_list "(pfVar16->fr_literal,pfVar21->fr_literal + pfVar21->fr_fix,pfVar21->fr_var)" ( (field_expression "pfVar16->fr_literal" identifier -> field_identifier) , (binary_expression "pfVar21->fr_literal + pfVar21->fr_fix" (field_expression "pfVar21->fr_literal" identifier -> field_identifier) + (field_expression "pfVar21->fr_fix" identifier -> field_identifier)) , (field_expression "pfVar21->fr_var" identifier -> field_identifier) ))) ;) (expression_statement "oVar6 = pfVar21->fr_offset;" (assignment_expression "oVar6 = pfVar21->fr_offset" identifier = (field_expression "pfVar21->fr_offset" identifier -> field_identifier)) ;) (expression_statement "aVar27 = uVar12 + aVar3 + pfVar21->fr_fix;" (assignment_expression "aVar27 = uVar12 + aVar3 + pfVar21->fr_fix" identifier = (binary_expression "uVar12 + aVar3 + pfVar21->fr_fix" (binary_expression "uVar12 + aVar3" identifier + identifier) + (field_expression "pfVar21->fr_fix" identifier -> field_identifier))) ;) (expression_statement "pfVar16->fr_type = rs_fill;" (assignment_expression "pfVar16->fr_type = rs_fill" (field_expression "pfVar16->fr_type" identifier -> field_identifier) = identifier) ;) (expression_statement "pfVar16->fr_address = aVar27;" (assignment_expression "pfVar16->fr_address = aVar27" (field_expression "pfVar16->fr_address" identifier -> field_identifier) = identifier) ;) (expression_statement "lVar17 = (1L << ((byte)oVar6 & 0x3f)) / pfVar21->fr_var;" (assignment_expression "lVar17 = (1L << ((byte)oVar6 & 0x3f)) / pfVar21->fr_var" identifier = (binary_expression "(1L << ((byte)oVar6 & 0x3f)) / pfVar21->fr_var" (parenthesized_expression "(1L << ((byte)oVar6 & 0x3f))" ( (binary_expression "1L << ((byte)oVar6 & 0x3f)" number_literal << (parenthesized_expression "((byte)oVar6 & 0x3f)" ( (binary_expression "(byte)oVar6 & 0x3f" (cast_expression "(byte)oVar6" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))) )) / (field_expression "pfVar21->fr_var" identifier -> field_identifier))) ;) (expression_statement "pfVar16->fr_fix = 0;" (assignment_expression "pfVar16->fr_fix = 0" (field_expression "pfVar16->fr_fix" identifier -> field_identifier) = number_literal) ;) (expression_statement "pfVar16->fr_offset = lVar17;" (assignment_expression "pfVar16->fr_offset = lVar17" (field_expression "pfVar16->fr_offset" identifier -> field_identifier) = identifier) ;) (expression_statement "lVar20 = 1L << ((byte)pfVar21->fr_offset & 0x3f);" (assignment_expression "lVar20 = 1L << ((byte)pfVar21->fr_offset & 0x3f)" identifier = (binary_expression "1L << ((byte)pfVar21->fr_offset & 0x3f)" number_literal << (parenthesized_expression "((byte)pfVar21->fr_offset & 0x3f)" ( (binary_expression "(byte)pfVar21->fr_offset & 0x3f" (cast_expression "(byte)pfVar21->fr_offset" ( (type_descriptor "byte" type_identifier) ) (field_expression "pfVar21->fr_offset" identifier -> field_identifier)) & number_literal) )))) ;) (if_statement "if (lVar17 * pfVar16->fr_var - lVar20 != 0) {\n          pfVar16->fr_offset = lVar20;\n          pfVar16->fr_var = 1;\n        }" if (parenthesized_expression "(lVar17 * pfVar16->fr_var - lVar20 != 0)" ( (binary_expression "lVar17 * pfVar16->fr_var - lVar20 != 0" (binary_expression "lVar17 * pfVar16->fr_var - lVar20" (binary_expression "lVar17 * pfVar16->fr_var" identifier * (field_expression "pfVar16->fr_var" identifier -> field_identifier)) - identifier) != number_literal) )) (compound_statement "{\n          pfVar16->fr_offset = lVar20;\n          pfVar16->fr_var = 1;\n        }" { (expression_statement "pfVar16->fr_offset = lVar20;" (assignment_expression "pfVar16->fr_offset = lVar20" (field_expression "pfVar16->fr_offset" identifier -> field_identifier) = identifier) ;) (expression_statement "pfVar16->fr_var = 1;" (assignment_expression "pfVar16->fr_var = 1" (field_expression "pfVar16->fr_var" identifier -> field_identifier) = number_literal) ;) })) (expression_statement "uVar28 = uVar28 + lVar20;" (assignment_expression "uVar28 = uVar28 + lVar20" identifier = (binary_expression "uVar28 + lVar20" identifier + identifier)) ;) (expression_statement "pfVar16->fr_address = aVar27 - (uVar28 + lVar22);" (assignment_expression "pfVar16->fr_address = aVar27 - (uVar28 + lVar22)" (field_expression "pfVar16->fr_address" identifier -> field_identifier) = (binary_expression "aVar27 - (uVar28 + lVar22)" identifier - (parenthesized_expression "(uVar28 + lVar22)" ( (binary_expression "uVar28 + lVar22" identifier + identifier) )))) ;) (expression_statement "pfVar16->field_0x5a = pfVar16->field_0x5a & 0xfe | pfVar16->field_0x5a & 1 ^ 1;" (assignment_expression "pfVar16->field_0x5a = pfVar16->field_0x5a & 0xfe | pfVar16->field_0x5a & 1 ^ 1" (field_expression "pfVar16->field_0x5a" identifier -> field_identifier) = (binary_expression "pfVar16->field_0x5a & 0xfe | pfVar16->field_0x5a & 1 ^ 1" (binary_expression "pfVar16->field_0x5a & 0xfe" (field_expression "pfVar16->field_0x5a" identifier -> field_identifier) & number_literal) | (binary_expression "pfVar16->field_0x5a & 1 ^ 1" (binary_expression "pfVar16->field_0x5a & 1" (field_expression "pfVar16->field_0x5a" identifier -> field_identifier) & number_literal) ^ number_literal))) ;) (expression_statement "pfVar21->fr_next = pfVar16;" (assignment_expression "pfVar21->fr_next = pfVar16" (field_expression "pfVar21->fr_next" identifier -> field_identifier) = identifier) ;) (goto_statement "goto LAB_00131409;" goto statement_identifier ;) })) (expression_statement "pfVar16 = pfVar21->fr_next;" (assignment_expression "pfVar16 = pfVar21->fr_next" identifier = (field_expression "pfVar21->fr_next" identifier -> field_identifier)) ;) (expression_statement "lVar22 = lVar22 + uVar28;" (assignment_expression "lVar22 = lVar22 + uVar28" identifier = (binary_expression "lVar22 + uVar28" identifier + identifier)) ;) (goto_statement "goto LAB_0013137d;" goto statement_identifier ;)) (case_statement "case rs_org:\n      if (psVar4 != (symbolS *)0x0) {\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (paVar14->vma != 0) {\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/write.c",0xb80,"relax_segment");\n        }\n        vVar15 = S_GET_VALUE(psVar4);\n        uVar28 = uVar28 + vVar15;\n      }\n      pfVar16 = pfVar21->fr_next;\n      if (pfVar16 == (fragS *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/write.c",0xb84,"relax_segment");\n      }\n      aVar5 = pfVar16->fr_address;\n      if (uVar28 < aVar3 + pfVar21->fr_fix) {\n        if (pass < 2) goto code_r0x00131269;\n        pcVar18 = (char *)dcgettext(0,"attempt to move .org backwards",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_type = rs_align;\n        pfVar21->fr_subtype = 0;\n        pfVar21->fr_offset = 0;\n        pfVar21->fr_fix = aVar5 - aVar27;\n        pfVar16 = pfVar21->fr_next;\n        goto LAB_001311e7;\n      }\n      uVar28 = uVar28 - (aVar5 + lVar22);\nLAB_00131409:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\n        goto LAB_00131375;\n      }\n      pfVar21 = pfVar16;\n      aVar27 = pfVar16->fr_address;\n      goto LAB_00131000;" case identifier : (if_statement "if (psVar4 != (symbolS *)0x0) {\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (paVar14->vma != 0) {\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/write.c",0xb80,"relax_segment");\n        }\n        vVar15 = S_GET_VALUE(psVar4);\n        uVar28 = uVar28 + vVar15;\n      }" if (parenthesized_expression "(psVar4 != (symbolS *)0x0)" ( (binary_expression "psVar4 != (symbolS *)0x0" identifier != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (paVar14->vma != 0) {\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/write.c",0xb80,"relax_segment");\n        }\n        vVar15 = S_GET_VALUE(psVar4);\n        uVar28 = uVar28 + vVar15;\n      }" { (expression_statement "paVar14 = S_GET_SEGMENT(psVar4);" (assignment_expression "paVar14 = S_GET_SEGMENT(psVar4)" identifier = (call_expression "S_GET_SEGMENT(psVar4)" identifier (argument_list "(psVar4)" ( identifier )))) ;) (if_statement "if (paVar14->vma != 0) {\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/write.c",0xb80,"relax_segment");\n        }" if (parenthesized_expression "(paVar14->vma != 0)" ( (binary_expression "paVar14->vma != 0" (field_expression "paVar14->vma" identifier -> field_identifier) != number_literal) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n          as_abort("../../gas/write.c",0xb80,"relax_segment");\n        }" { comment (expression_statement "as_abort("../../gas/write.c",0xb80,"relax_segment");" (call_expression "as_abort("../../gas/write.c",0xb80,"relax_segment")" identifier (argument_list "("../../gas/write.c",0xb80,"relax_segment")" ( (string_literal ""../../gas/write.c"" " string_content ") , number_literal , (string_literal ""relax_segment"" " string_content ") ))) ;) })) (expression_statement "vVar15 = S_GET_VALUE(psVar4);" (assignment_expression "vVar15 = S_GET_VALUE(psVar4)" identifier = (call_expression "S_GET_VALUE(psVar4)" identifier (argument_list "(psVar4)" ( identifier )))) ;) (expression_statement "uVar28 = uVar28 + vVar15;" (assignment_expression "uVar28 = uVar28 + vVar15" identifier = (binary_expression "uVar28 + vVar15" identifier + identifier)) ;) })) (expression_statement "pfVar16 = pfVar21->fr_next;" (assignment_expression "pfVar16 = pfVar21->fr_next" identifier = (field_expression "pfVar21->fr_next" identifier -> field_identifier)) ;) (if_statement "if (pfVar16 == (fragS *)0x0) {\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/write.c",0xb84,"relax_segment");\n      }" if (parenthesized_expression "(pfVar16 == (fragS *)0x0)" ( (binary_expression "pfVar16 == (fragS *)0x0" identifier == (cast_expression "(fragS *)0x0" ( (type_descriptor "fragS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n        as_abort("../../gas/write.c",0xb84,"relax_segment");\n      }" { comment (expression_statement "as_abort("../../gas/write.c",0xb84,"relax_segment");" (call_expression "as_abort("../../gas/write.c",0xb84,"relax_segment")" identifier (argument_list "("../../gas/write.c",0xb84,"relax_segment")" ( (string_literal ""../../gas/write.c"" " string_content ") , number_literal , (string_literal ""relax_segment"" " string_content ") ))) ;) })) (expression_statement "aVar5 = pfVar16->fr_address;" (assignment_expression "aVar5 = pfVar16->fr_address" identifier = (field_expression "pfVar16->fr_address" identifier -> field_identifier)) ;) (if_statement "if (uVar28 < aVar3 + pfVar21->fr_fix) {\n        if (pass < 2) goto code_r0x00131269;\n        pcVar18 = (char *)dcgettext(0,"attempt to move .org backwards",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_type = rs_align;\n        pfVar21->fr_subtype = 0;\n        pfVar21->fr_offset = 0;\n        pfVar21->fr_fix = aVar5 - aVar27;\n        pfVar16 = pfVar21->fr_next;\n        goto LAB_001311e7;\n      }" if (parenthesized_expression "(uVar28 < aVar3 + pfVar21->fr_fix)" ( (binary_expression "uVar28 < aVar3 + pfVar21->fr_fix" identifier < (binary_expression "aVar3 + pfVar21->fr_fix" identifier + (field_expression "pfVar21->fr_fix" identifier -> field_identifier))) )) (compound_statement "{\n        if (pass < 2) goto code_r0x00131269;\n        pcVar18 = (char *)dcgettext(0,"attempt to move .org backwards",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_type = rs_align;\n        pfVar21->fr_subtype = 0;\n        pfVar21->fr_offset = 0;\n        pfVar21->fr_fix = aVar5 - aVar27;\n        pfVar16 = pfVar21->fr_next;\n        goto LAB_001311e7;\n      }" { (if_statement "if (pass < 2) goto code_r0x00131269;" if (parenthesized_expression "(pass < 2)" ( (binary_expression "pass < 2" identifier < number_literal) )) (goto_statement "goto code_r0x00131269;" goto statement_identifier ;)) (expression_statement "pcVar18 = (char *)dcgettext(0,"attempt to move .org backwards",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,"attempt to move .org backwards",5)" identifier = (cast_expression "(char *)dcgettext(0,"attempt to move .org backwards",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"attempt to move .org backwards",5)" identifier (argument_list "(0,"attempt to move .org backwards",5)" ( number_literal , (string_literal ""attempt to move .org backwards"" " string_content ") , number_literal ))))) ;) (expression_statement "as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);" (call_expression "as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18)" identifier (argument_list "(pfVar21->fr_file,pfVar21->fr_line,pcVar18)" ( (field_expression "pfVar21->fr_file" identifier -> field_identifier) , (field_expression "pfVar21->fr_line" identifier -> field_identifier) , identifier ))) ;) (expression_statement "pfVar21->fr_type = rs_align;" (assignment_expression "pfVar21->fr_type = rs_align" (field_expression "pfVar21->fr_type" identifier -> field_identifier) = identifier) ;) (expression_statement "pfVar21->fr_subtype = 0;" (assignment_expression "pfVar21->fr_subtype = 0" (field_expression "pfVar21->fr_subtype" identifier -> field_identifier) = number_literal) ;) (expression_statement "pfVar21->fr_offset = 0;" (assignment_expression "pfVar21->fr_offset = 0" (field_expression "pfVar21->fr_offset" identifier -> field_identifier) = number_literal) ;) (expression_statement "pfVar21->fr_fix = aVar5 - aVar27;" (assignment_expression "pfVar21->fr_fix = aVar5 - aVar27" (field_expression "pfVar21->fr_fix" identifier -> field_identifier) = (binary_expression "aVar5 - aVar27" identifier - identifier)) ;) (expression_statement "pfVar16 = pfVar21->fr_next;" (assignment_expression "pfVar16 = pfVar21->fr_next" identifier = (field_expression "pfVar21->fr_next" identifier -> field_identifier)) ;) (goto_statement "goto LAB_001311e7;" goto statement_identifier ;) })) (expression_statement "uVar28 = uVar28 - (aVar5 + lVar22);" (assignment_expression "uVar28 = uVar28 - (aVar5 + lVar22)" identifier = (binary_expression "uVar28 - (aVar5 + lVar22)" identifier - (parenthesized_expression "(aVar5 + lVar22)" ( (binary_expression "aVar5 + lVar22" identifier + identifier) )))) ;) (labeled_statement "LAB_00131409:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\n        goto LAB_00131375;\n      }" statement_identifier : (if_statement "if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\n        goto LAB_00131375;\n      }" if (parenthesized_expression "(uVar28 != 0)" ( (binary_expression "uVar28 != 0" identifier != number_literal) )) (compound_statement "{\n        rVar19 = pfVar21->fr_type;\n        goto LAB_00131375;\n      }" { (expression_statement "rVar19 = pfVar21->fr_type;" (assignment_expression "rVar19 = pfVar21->fr_type" identifier = (field_expression "pfVar21->fr_type" identifier -> field_identifier)) ;) (goto_statement "goto LAB_00131375;" goto statement_identifier ;) }))) (expression_statement "pfVar21 = pfVar16;" (assignment_expression "pfVar21 = pfVar16" identifier = identifier) ;) (expression_statement "aVar27 = pfVar16->fr_address;" (assignment_expression "aVar27 = pfVar16->fr_address" identifier = (field_expression "pfVar16->fr_address" identifier -> field_identifier)) ;) (goto_statement "goto LAB_00131000;" goto statement_identifier ;)) (case_statement "case rs_space:" case identifier :) (case_statement "case rs_space_nop:\n      if (psVar4 != (symbolS *)0x0) {\n        vVar15 = S_GET_VALUE(psVar4);\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (((paVar14 == (segT)(_bfd_std_section + 0x230)) &&\n            (iVar10 = S_IS_COMMON(psVar4), iVar10 == 0)) &&\n           (iVar10 = S_IS_DEFINED(psVar4), iVar10 != 0)) {\n          if ((long)vVar15 < 0) {\n            if (pass < 2) {\n              pfVar16 = pfVar21->fr_next;\n              local_54 = 1;\n            }\n            else {\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }\n            goto LAB_001311e7;\n          }\n          pfVar16 = pfVar21->fr_next;\n          uVar28 = ((pfVar21->fr_fix + aVar27) - pfVar16->fr_address) + vVar15;\n          goto LAB_00131409;\n        }\n        pcVar18 = (char *)dcgettext(0,".space specifies non-absolute value",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_symbol = (symbolS *)0x0;\n      }" case identifier : (if_statement "if (psVar4 != (symbolS *)0x0) {\n        vVar15 = S_GET_VALUE(psVar4);\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (((paVar14 == (segT)(_bfd_std_section + 0x230)) &&\n            (iVar10 = S_IS_COMMON(psVar4), iVar10 == 0)) &&\n           (iVar10 = S_IS_DEFINED(psVar4), iVar10 != 0)) {\n          if ((long)vVar15 < 0) {\n            if (pass < 2) {\n              pfVar16 = pfVar21->fr_next;\n              local_54 = 1;\n            }\n            else {\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }\n            goto LAB_001311e7;\n          }\n          pfVar16 = pfVar21->fr_next;\n          uVar28 = ((pfVar21->fr_fix + aVar27) - pfVar16->fr_address) + vVar15;\n          goto LAB_00131409;\n        }\n        pcVar18 = (char *)dcgettext(0,".space specifies non-absolute value",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_symbol = (symbolS *)0x0;\n      }" if (parenthesized_expression "(psVar4 != (symbolS *)0x0)" ( (binary_expression "psVar4 != (symbolS *)0x0" identifier != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        vVar15 = S_GET_VALUE(psVar4);\n        paVar14 = S_GET_SEGMENT(psVar4);\n        if (((paVar14 == (segT)(_bfd_std_section + 0x230)) &&\n            (iVar10 = S_IS_COMMON(psVar4), iVar10 == 0)) &&\n           (iVar10 = S_IS_DEFINED(psVar4), iVar10 != 0)) {\n          if ((long)vVar15 < 0) {\n            if (pass < 2) {\n              pfVar16 = pfVar21->fr_next;\n              local_54 = 1;\n            }\n            else {\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }\n            goto LAB_001311e7;\n          }\n          pfVar16 = pfVar21->fr_next;\n          uVar28 = ((pfVar21->fr_fix + aVar27) - pfVar16->fr_address) + vVar15;\n          goto LAB_00131409;\n        }\n        pcVar18 = (char *)dcgettext(0,".space specifies non-absolute value",5);\n        as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n        pfVar21->fr_symbol = (symbolS *)0x0;\n      }" { (expression_statement "vVar15 = S_GET_VALUE(psVar4);" (assignment_expression "vVar15 = S_GET_VALUE(psVar4)" identifier = (call_expression "S_GET_VALUE(psVar4)" identifier (argument_list "(psVar4)" ( identifier )))) ;) (expression_statement "paVar14 = S_GET_SEGMENT(psVar4);" (assignment_expression "paVar14 = S_GET_SEGMENT(psVar4)" identifier = (call_expression "S_GET_SEGMENT(psVar4)" identifier (argument_list "(psVar4)" ( identifier )))) ;) (if_statement "if (((paVar14 == (segT)(_bfd_std_section + 0x230)) &&\n            (iVar10 = S_IS_COMMON(psVar4), iVar10 == 0)) &&\n           (iVar10 = S_IS_DEFINED(psVar4), iVar10 != 0)) {\n          if ((long)vVar15 < 0) {\n            if (pass < 2) {\n              pfVar16 = pfVar21->fr_next;\n              local_54 = 1;\n            }\n            else {\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }\n            goto LAB_001311e7;\n          }\n          pfVar16 = pfVar21->fr_next;\n          uVar28 = ((pfVar21->fr_fix + aVar27) - pfVar16->fr_address) + vVar15;\n          goto LAB_00131409;\n        }" if (parenthesized_expression "(((paVar14 == (segT)(_bfd_std_section + 0x230)) &&\n            (iVar10 = S_IS_COMMON(psVar4), iVar10 == 0)) &&\n           (iVar10 = S_IS_DEFINED(psVar4), iVar10 != 0))" ( (binary_expression "((paVar14 == (segT)(_bfd_std_section + 0x230)) &&\n            (iVar10 = S_IS_COMMON(psVar4), iVar10 == 0)) &&\n           (iVar10 = S_IS_DEFINED(psVar4), iVar10 != 0)" (parenthesized_expression "((paVar14 == (segT)(_bfd_std_section + 0x230)) &&\n            (iVar10 = S_IS_COMMON(psVar4), iVar10 == 0))" ( (binary_expression "(paVar14 == (segT)(_bfd_std_section + 0x230)) &&\n            (iVar10 = S_IS_COMMON(psVar4), iVar10 == 0)" (parenthesized_expression "(paVar14 == (segT)(_bfd_std_section + 0x230))" ( (binary_expression "paVar14 == (segT)(_bfd_std_section + 0x230)" identifier == (call_expression "(segT)(_bfd_std_section + 0x230)" (parenthesized_expression "(segT)" ( identifier )) (argument_list "(_bfd_std_section + 0x230)" ( (binary_expression "_bfd_std_section + 0x230" identifier + number_literal) )))) )) && (parenthesized_expression "(iVar10 = S_IS_COMMON(psVar4), iVar10 == 0)" ( (comma_expression "iVar10 = S_IS_COMMON(psVar4), iVar10 == 0" (assignment_expression "iVar10 = S_IS_COMMON(psVar4)" identifier = (call_expression "S_IS_COMMON(psVar4)" identifier (argument_list "(psVar4)" ( identifier )))) , (binary_expression "iVar10 == 0" identifier == number_literal)) ))) )) && (parenthesized_expression "(iVar10 = S_IS_DEFINED(psVar4), iVar10 != 0)" ( (comma_expression "iVar10 = S_IS_DEFINED(psVar4), iVar10 != 0" (assignment_expression "iVar10 = S_IS_DEFINED(psVar4)" identifier = (call_expression "S_IS_DEFINED(psVar4)" identifier (argument_list "(psVar4)" ( identifier )))) , (binary_expression "iVar10 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n          if ((long)vVar15 < 0) {\n            if (pass < 2) {\n              pfVar16 = pfVar21->fr_next;\n              local_54 = 1;\n            }\n            else {\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }\n            goto LAB_001311e7;\n          }\n          pfVar16 = pfVar21->fr_next;\n          uVar28 = ((pfVar21->fr_fix + aVar27) - pfVar16->fr_address) + vVar15;\n          goto LAB_00131409;\n        }" { (if_statement "if ((long)vVar15 < 0) {\n            if (pass < 2) {\n              pfVar16 = pfVar21->fr_next;\n              local_54 = 1;\n            }\n            else {\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }\n            goto LAB_001311e7;\n          }" if (parenthesized_expression "((long)vVar15 < 0)" ( (binary_expression "(long)vVar15 < 0" (cast_expression "(long)vVar15" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) < number_literal) )) (compound_statement "{\n            if (pass < 2) {\n              pfVar16 = pfVar21->fr_next;\n              local_54 = 1;\n            }\n            else {\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }\n            goto LAB_001311e7;\n          }" { (if_statement "if (pass < 2) {\n              pfVar16 = pfVar21->fr_next;\n              local_54 = 1;\n            }\n            else {\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }" if (parenthesized_expression "(pass < 2)" ( (binary_expression "pass < 2" identifier < number_literal) )) (compound_statement "{\n              pfVar16 = pfVar21->fr_next;\n              local_54 = 1;\n            }" { (expression_statement "pfVar16 = pfVar21->fr_next;" (assignment_expression "pfVar16 = pfVar21->fr_next" identifier = (field_expression "pfVar21->fr_next" identifier -> field_identifier)) ;) (expression_statement "local_54 = 1;" (assignment_expression "local_54 = 1" identifier = number_literal) ;) }) (else_clause "else {\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }" else (compound_statement "{\n              pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;\n              as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);\n              pfVar21->fr_symbol = (symbolS *)0x0;\n              pfVar16 = pfVar21->fr_next;\n            }" { (expression_statement "pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)\n              ;" (assignment_expression "pcVar18 = (char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)" identifier = (cast_expression "(char *)dcgettext(0,".space, .nops or .fill with negative value, ignored",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,".space, .nops or .fill with negative value, ignored",5)" identifier (argument_list "(0,".space, .nops or .fill with negative value, ignored",5)" ( number_literal , (string_literal "".space, .nops or .fill with negative value, ignored"" " string_content ") , number_literal ))))) ;) (expression_statement "as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);" (call_expression "as_warn_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18)" identifier (argument_list "(pfVar21->fr_file,pfVar21->fr_line,pcVar18)" ( (field_expression "pfVar21->fr_file" identifier -> field_identifier) , (field_expression "pfVar21->fr_line" identifier -> field_identifier) , identifier ))) ;) (expression_statement "pfVar21->fr_symbol = (symbolS *)0x0;" (assignment_expression "pfVar21->fr_symbol = (symbolS *)0x0" (field_expression "pfVar21->fr_symbol" identifier -> field_identifier) = (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "pfVar16 = pfVar21->fr_next;" (assignment_expression "pfVar16 = pfVar21->fr_next" identifier = (field_expression "pfVar21->fr_next" identifier -> field_identifier)) ;) }))) (goto_statement "goto LAB_001311e7;" goto statement_identifier ;) })) (expression_statement "pfVar16 = pfVar21->fr_next;" (assignment_expression "pfVar16 = pfVar21->fr_next" identifier = (field_expression "pfVar21->fr_next" identifier -> field_identifier)) ;) (expression_statement "uVar28 = ((pfVar21->fr_fix + aVar27) - pfVar16->fr_address) + vVar15;" (assignment_expression "uVar28 = ((pfVar21->fr_fix + aVar27) - pfVar16->fr_address) + vVar15" identifier = (binary_expression "((pfVar21->fr_fix + aVar27) - pfVar16->fr_address) + vVar15" (parenthesized_expression "((pfVar21->fr_fix + aVar27) - pfVar16->fr_address)" ( (binary_expression "(pfVar21->fr_fix + aVar27) - pfVar16->fr_address" (parenthesized_expression "(pfVar21->fr_fix + aVar27)" ( (binary_expression "pfVar21->fr_fix + aVar27" (field_expression "pfVar21->fr_fix" identifier -> field_identifier) + identifier) )) - (field_expression "pfVar16->fr_address" identifier -> field_identifier)) )) + identifier)) ;) (goto_statement "goto LAB_00131409;" goto statement_identifier ;) })) (expression_statement "pcVar18 = (char *)dcgettext(0,".space specifies non-absolute value",5);" (assignment_expression "pcVar18 = (char *)dcgettext(0,".space specifies non-absolute value",5)" identifier = (cast_expression "(char *)dcgettext(0,".space specifies non-absolute value",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,".space specifies non-absolute value",5)" identifier (argument_list "(0,".space specifies non-absolute value",5)" ( number_literal , (string_literal "".space specifies non-absolute value"" " string_content ") , number_literal ))))) ;) (expression_statement "as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18);" (call_expression "as_bad_where(pfVar21->fr_file,pfVar21->fr_line,pcVar18)" identifier (argument_list "(pfVar21->fr_file,pfVar21->fr_line,pcVar18)" ( (field_expression "pfVar21->fr_file" identifier -> field_identifier) , (field_expression "pfVar21->fr_line" identifier -> field_identifier) , identifier ))) ;) (expression_statement "pfVar21->fr_symbol = (symbolS *)0x0;" (assignment_expression "pfVar21->fr_symbol = (symbolS *)0x0" (field_expression "pfVar21->fr_symbol" identifier -> field_identifier) = (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }))) (case_statement "case rs_fill:" case identifier :) (case_statement "case rs_machine_dependent:\nswitchD_00131039_caseD_1:\n      pfVar16 = pfVar21->fr_next;\nLAB_001311e7:\n      if (pfVar16 == (fragS *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      pfVar21 = pfVar16;\n      aVar27 = pfVar16->fr_address;\n      goto LAB_00131000;" case identifier : (labeled_statement "switchD_00131039_caseD_1:\n      pfVar16 = pfVar21->fr_next;" statement_identifier : (expression_statement "pfVar16 = pfVar21->fr_next;" (assignment_expression "pfVar16 = pfVar21->fr_next" identifier = (field_expression "pfVar21->fr_next" identifier -> field_identifier)) ;)) (labeled_statement "LAB_001311e7:\n      if (pfVar16 == (fragS *)0x0) goto LAB_001312f1;" statement_identifier : (if_statement "if (pfVar16 == (fragS *)0x0) goto LAB_001312f1;" if (parenthesized_expression "(pfVar16 == (fragS *)0x0)" ( (binary_expression "pfVar16 == (fragS *)0x0" identifier == (cast_expression "(fragS *)0x0" ( (type_descriptor "fragS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_001312f1;" goto statement_identifier ;))) (labeled_statement "LAB_001311f0:\n      pfVar21 = pfVar16;" statement_identifier : (expression_statement "pfVar21 = pfVar16;" (assignment_expression "pfVar21 = pfVar16" identifier = identifier) ;)) (expression_statement "aVar27 = pfVar16->fr_address;" (assignment_expression "aVar27 = pfVar16->fr_address" identifier = (field_expression "pfVar16->fr_address" identifier -> field_identifier)) ;) (goto_statement "goto LAB_00131000;" goto statement_identifier ;)) (case_statement "case rs_leb128:\n      vVar15 = resolve_symbol_value(psVar4);\n      uVar11 = sizeof_leb128(vVar15,pfVar21->fr_subtype);\n      uVar28 = (ulong)uVar11 - pfVar21->fr_offset;\n      pfVar21->fr_offset = (ulong)uVar11;\n      goto LAB_001312d8;" case identifier : (expression_statement "vVar15 = resolve_symbol_value(psVar4);" (assignment_expression "vVar15 = resolve_symbol_value(psVar4)" identifier = (call_expression "resolve_symbol_value(psVar4)" identifier (argument_list "(psVar4)" ( identifier )))) ;) (expression_statement "uVar11 = sizeof_leb128(vVar15,pfVar21->fr_subtype);" (assignment_expression "uVar11 = sizeof_leb128(vVar15,pfVar21->fr_subtype)" identifier = (call_expression "sizeof_leb128(vVar15,pfVar21->fr_subtype)" identifier (argument_list "(vVar15,pfVar21->fr_subtype)" ( identifier , (field_expression "pfVar21->fr_subtype" identifier -> field_identifier) )))) ;) (expression_statement "uVar28 = (ulong)uVar11 - pfVar21->fr_offset;" (assignment_expression "uVar28 = (ulong)uVar11 - pfVar21->fr_offset" identifier = (binary_expression "(ulong)uVar11 - pfVar21->fr_offset" (cast_expression "(ulong)uVar11" ( (type_descriptor "ulong" type_identifier) ) identifier) - (field_expression "pfVar21->fr_offset" identifier -> field_identifier))) ;) (expression_statement "pfVar21->fr_offset = (ulong)uVar11;" (assignment_expression "pfVar21->fr_offset = (ulong)uVar11" (field_expression "pfVar21->fr_offset" identifier -> field_identifier) = (cast_expression "(ulong)uVar11" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (goto_statement "goto LAB_001312d8;" goto statement_identifier ;)) (case_statement "case rs_cfa:\n      iVar10 = eh_frame_relax_frag(pfVar21);\n      uVar28 = (ulong)iVar10;\nLAB_001312d8:\n      pfVar16 = pfVar21->fr_next;\njoined_r0x00131369:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\nLAB_00131375:\n        lVar22 = lVar22 + uVar28;\n        if (rVar19 == rs_leb128) {\nLAB_001313e8:\n          uVar25 = uVar25 + 0x10;\n          bVar8 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;\n          uVar25 = 0;\n          bVar8 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (pfVar16 != (fragS *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar22 == 0) && ((uVar25 & 0x10) == 0)) {\n        uVar11 = uVar25 + 1;\n        uVar24 = uVar25 & 0xfffffff0;\n        uVar25 = 0;\n        if (uVar24 != 0) {\n          uVar25 = uVar11;\n        }\n      }\n      else {\n        uVar25 = 0;\n      }\n      if (!bVar8) {\n        do {\n          if (segment_frag_root->last_fr_address != segment_frag_root->fr_address) {\n            segment_frag_root->last_fr_address = segment_frag_root->fr_address;\n            local_54 = 1;\n          }\n          segment_frag_root = segment_frag_root->fr_next;\n        } while (segment_frag_root != (frag *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        pcVar18 = segment->name;\n        format = (char *)dcgettext(0,\n                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                                   ,5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(format,pcVar18);\n      }\n      break;" case identifier : (expression_statement "iVar10 = eh_frame_relax_frag(pfVar21);" (assignment_expression "iVar10 = eh_frame_relax_frag(pfVar21)" identifier = (call_expression "eh_frame_relax_frag(pfVar21)" identifier (argument_list "(pfVar21)" ( identifier )))) ;) (expression_statement "uVar28 = (ulong)iVar10;" (assignment_expression "uVar28 = (ulong)iVar10" identifier = (cast_expression "(ulong)iVar10" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (labeled_statement "LAB_001312d8:\n      pfVar16 = pfVar21->fr_next;" statement_identifier : (expression_statement "pfVar16 = pfVar21->fr_next;" (assignment_expression "pfVar16 = pfVar21->fr_next" identifier = (field_expression "pfVar21->fr_next" identifier -> field_identifier)) ;)) (labeled_statement "joined_r0x00131369:\n      if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\nLAB_00131375:\n        lVar22 = lVar22 + uVar28;\n        if (rVar19 == rs_leb128) {\nLAB_001313e8:\n          uVar25 = uVar25 + 0x10;\n          bVar8 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;\n          uVar25 = 0;\n          bVar8 = true;\n        }\n        goto LAB_001311e7;\n      }" statement_identifier : (if_statement "if (uVar28 != 0) {\n        rVar19 = pfVar21->fr_type;\nLAB_00131375:\n        lVar22 = lVar22 + uVar28;\n        if (rVar19 == rs_leb128) {\nLAB_001313e8:\n          uVar25 = uVar25 + 0x10;\n          bVar8 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;\n          uVar25 = 0;\n          bVar8 = true;\n        }\n        goto LAB_001311e7;\n      }" if (parenthesized_expression "(uVar28 != 0)" ( (binary_expression "uVar28 != 0" identifier != number_literal) )) (compound_statement "{\n        rVar19 = pfVar21->fr_type;\nLAB_00131375:\n        lVar22 = lVar22 + uVar28;\n        if (rVar19 == rs_leb128) {\nLAB_001313e8:\n          uVar25 = uVar25 + 0x10;\n          bVar8 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;\n          uVar25 = 0;\n          bVar8 = true;\n        }\n        goto LAB_001311e7;\n      }" { (expression_statement "rVar19 = pfVar21->fr_type;" (assignment_expression "rVar19 = pfVar21->fr_type" identifier = (field_expression "pfVar21->fr_type" identifier -> field_identifier)) ;) (labeled_statement "LAB_00131375:\n        lVar22 = lVar22 + uVar28;" statement_identifier : (expression_statement "lVar22 = lVar22 + uVar28;" (assignment_expression "lVar22 = lVar22 + uVar28" identifier = (binary_expression "lVar22 + uVar28" identifier + identifier)) ;)) (if_statement "if (rVar19 == rs_leb128) {\nLAB_001313e8:\n          uVar25 = uVar25 + 0x10;\n          bVar8 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;\n          uVar25 = 0;\n          bVar8 = true;\n        }" if (parenthesized_expression "(rVar19 == rs_leb128)" ( (binary_expression "rVar19 == rs_leb128" identifier == identifier) )) (compound_statement "{\nLAB_001313e8:\n          uVar25 = uVar25 + 0x10;\n          bVar8 = true;\n        }" { (labeled_statement "LAB_001313e8:\n          uVar25 = uVar25 + 0x10;" statement_identifier : (expression_statement "uVar25 = uVar25 + 0x10;" (assignment_expression "uVar25 = uVar25 + 0x10" identifier = (binary_expression "uVar25 + 0x10" identifier + number_literal)) ;)) (expression_statement "bVar8 = true;" (assignment_expression "bVar8 = true" identifier = true) ;) }) (else_clause "else {\nLAB_0013137d:\n          if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;\n          uVar25 = 0;\n          bVar8 = true;\n        }" else (compound_statement "{\nLAB_0013137d:\n          if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;\n          uVar25 = 0;\n          bVar8 = true;\n        }" { (labeled_statement "LAB_0013137d:\n          if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;" statement_identifier : (if_statement "if (((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)) goto LAB_001313e8;" if (parenthesized_expression "(((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0))" ( (binary_expression "((rVar19 == rs_align) && ((uVar25 & 0x10) != 0)) && (lVar22 == 0)" (parenthesized_expression "((rVar19 == rs_align) && ((uVar25 & 0x10) != 0))" ( (binary_expression "(rVar19 == rs_align) && ((uVar25 & 0x10) != 0)" (parenthesized_expression "(rVar19 == rs_align)" ( (binary_expression "rVar19 == rs_align" identifier == identifier) )) && (parenthesized_expression "((uVar25 & 0x10) != 0)" ( (binary_expression "(uVar25 & 0x10) != 0" (parenthesized_expression "(uVar25 & 0x10)" ( (binary_expression "uVar25 & 0x10" identifier & number_literal) )) != number_literal) ))) )) && (parenthesized_expression "(lVar22 == 0)" ( (binary_expression "lVar22 == 0" identifier == number_literal) ))) )) (goto_statement "goto LAB_001313e8;" goto statement_identifier ;))) (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;) (expression_statement "bVar8 = true;" (assignment_expression "bVar8 = true" identifier = true) ;) }))) (goto_statement "goto LAB_001311e7;" goto statement_identifier ;) }))) (if_statement "if (pfVar16 != (fragS *)0x0) goto LAB_001311f0;" if (parenthesized_expression "(pfVar16 != (fragS *)0x0)" ( (binary_expression "pfVar16 != (fragS *)0x0" identifier != (cast_expression "(fragS *)0x0" ( (type_descriptor "fragS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_001311f0;" goto statement_identifier ;)) (labeled_statement "LAB_001312f1:\n      if ((lVar22 == 0) && ((uVar25 & 0x10) == 0)) {\n        uVar11 = uVar25 + 1;\n        uVar24 = uVar25 & 0xfffffff0;\n        uVar25 = 0;\n        if (uVar24 != 0) {\n          uVar25 = uVar11;\n        }\n      }\n      else {\n        uVar25 = 0;\n      }" statement_identifier : (if_statement "if ((lVar22 == 0) && ((uVar25 & 0x10) == 0)) {\n        uVar11 = uVar25 + 1;\n        uVar24 = uVar25 & 0xfffffff0;\n        uVar25 = 0;\n        if (uVar24 != 0) {\n          uVar25 = uVar11;\n        }\n      }\n      else {\n        uVar25 = 0;\n      }" if (parenthesized_expression "((lVar22 == 0) && ((uVar25 & 0x10) == 0))" ( (binary_expression "(lVar22 == 0) && ((uVar25 & 0x10) == 0)" (parenthesized_expression "(lVar22 == 0)" ( (binary_expression "lVar22 == 0" identifier == number_literal) )) && (parenthesized_expression "((uVar25 & 0x10) == 0)" ( (binary_expression "(uVar25 & 0x10) == 0" (parenthesized_expression "(uVar25 & 0x10)" ( (binary_expression "uVar25 & 0x10" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n        uVar11 = uVar25 + 1;\n        uVar24 = uVar25 & 0xfffffff0;\n        uVar25 = 0;\n        if (uVar24 != 0) {\n          uVar25 = uVar11;\n        }\n      }" { (expression_statement "uVar11 = uVar25 + 1;" (assignment_expression "uVar11 = uVar25 + 1" identifier = (binary_expression "uVar25 + 1" identifier + number_literal)) ;) (expression_statement "uVar24 = uVar25 & 0xfffffff0;" (assignment_expression "uVar24 = uVar25 & 0xfffffff0" identifier = (binary_expression "uVar25 & 0xfffffff0" identifier & number_literal)) ;) (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;) (if_statement "if (uVar24 != 0) {\n          uVar25 = uVar11;\n        }" if (parenthesized_expression "(uVar24 != 0)" ( (binary_expression "uVar24 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar25 = uVar11;\n        }" { (expression_statement "uVar25 = uVar11;" (assignment_expression "uVar25 = uVar11" identifier = identifier) ;) })) }) (else_clause "else {\n        uVar25 = 0;\n      }" else (compound_statement "{\n        uVar25 = 0;\n      }" { (expression_statement "uVar25 = 0;" (assignment_expression "uVar25 = 0" identifier = number_literal) ;) })))) (if_statement "if (!bVar8) {\n        do {\n          if (segment_frag_root->last_fr_address != segment_frag_root->fr_address) {\n            segment_frag_root->last_fr_address = segment_frag_root->fr_address;\n            local_54 = 1;\n          }\n          segment_frag_root = segment_frag_root->fr_next;\n        } while (segment_frag_root != (frag *)0x0);\n        return local_54;\n      }" if (parenthesized_expression "(!bVar8)" ( (unary_expression "!bVar8" ! identifier) )) (compound_statement "{\n        do {\n          if (segment_frag_root->last_fr_address != segment_frag_root->fr_address) {\n            segment_frag_root->last_fr_address = segment_frag_root->fr_address;\n            local_54 = 1;\n          }\n          segment_frag_root = segment_frag_root->fr_next;\n        } while (segment_frag_root != (frag *)0x0);\n        return local_54;\n      }" { (do_statement "do {\n          if (segment_frag_root->last_fr_address != segment_frag_root->fr_address) {\n            segment_frag_root->last_fr_address = segment_frag_root->fr_address;\n            local_54 = 1;\n          }\n          segment_frag_root = segment_frag_root->fr_next;\n        } while (segment_frag_root != (frag *)0x0);" do (compound_statement "{\n          if (segment_frag_root->last_fr_address != segment_frag_root->fr_address) {\n            segment_frag_root->last_fr_address = segment_frag_root->fr_address;\n            local_54 = 1;\n          }\n          segment_frag_root = segment_frag_root->fr_next;\n        }" { (if_statement "if (segment_frag_root->last_fr_address != segment_frag_root->fr_address) {\n            segment_frag_root->last_fr_address = segment_frag_root->fr_address;\n            local_54 = 1;\n          }" if (parenthesized_expression "(segment_frag_root->last_fr_address != segment_frag_root->fr_address)" ( (binary_expression "segment_frag_root->last_fr_address != segment_frag_root->fr_address" (field_expression "segment_frag_root->last_fr_address" identifier -> field_identifier) != (field_expression "segment_frag_root->fr_address" identifier -> field_identifier)) )) (compound_statement "{\n            segment_frag_root->last_fr_address = segment_frag_root->fr_address;\n            local_54 = 1;\n          }" { (expression_statement "segment_frag_root->last_fr_address = segment_frag_root->fr_address;" (assignment_expression "segment_frag_root->last_fr_address = segment_frag_root->fr_address" (field_expression "segment_frag_root->last_fr_address" identifier -> field_identifier) = (field_expression "segment_frag_root->fr_address" identifier -> field_identifier)) ;) (expression_statement "local_54 = 1;" (assignment_expression "local_54 = 1" identifier = number_literal) ;) })) (expression_statement "segment_frag_root = segment_frag_root->fr_next;" (assignment_expression "segment_frag_root = segment_frag_root->fr_next" identifier = (field_expression "segment_frag_root->fr_next" identifier -> field_identifier)) ;) }) while (parenthesized_expression "(segment_frag_root != (frag *)0x0)" ( (binary_expression "segment_frag_root != (frag *)0x0" identifier != (cast_expression "(frag *)0x0" ( (type_descriptor "frag *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) (return_statement "return local_54;" return identifier ;) })) (expression_statement "local_48 = local_48 - 1;" (assignment_expression "local_48 = local_48 - 1" identifier = (binary_expression "local_48 - 1" identifier - number_literal)) ;) (if_statement "if (local_48 == 0) {\n        pcVar18 = segment->name;\n        format = (char *)dcgettext(0,\n                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                                   ,5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(format,pcVar18);\n      }" if (parenthesized_expression "(local_48 == 0)" ( (binary_expression "local_48 == 0" identifier == number_literal) )) (compound_statement "{\n        pcVar18 = segment->name;\n        format = (char *)dcgettext(0,\n                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                                   ,5);\n                    /* WARNING: Subroutine does not return */\n        as_fatal(format,pcVar18);\n      }" { (expression_statement "pcVar18 = segment->name;" (assignment_expression "pcVar18 = segment->name" identifier = (field_expression "segment->name" identifier -> field_identifier)) ;) (expression_statement "format = (char *)dcgettext(0,\n                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                                   ,5);" (assignment_expression "format = (char *)dcgettext(0,\n                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                                   ,5)" identifier = (cast_expression "(char *)dcgettext(0,\n                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                                   ,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,\n                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                                   ,5)" identifier (argument_list "(0,\n                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                                   ,5)" ( number_literal , (string_literal ""Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"" " string_content ") , number_literal ))))) ;) comment (expression_statement "as_fatal(format,pcVar18);" (call_expression "as_fatal(format,pcVar18)" identifier (argument_list "(format,pcVar18)" ( identifier , identifier ))) ;) })) (break_statement "break;" break ;)) (case_statement "case rs_dwarf2dbg:\n      iVar10 = dwarf2dbg_relax_frag(pfVar21);\n      pfVar16 = pfVar21->fr_next;\n      uVar28 = (ulong)iVar10;\n      goto joined_r0x00131369;" case identifier : (expression_statement "iVar10 = dwarf2dbg_relax_frag(pfVar21);" (assignment_expression "iVar10 = dwarf2dbg_relax_frag(pfVar21)" identifier = (call_expression "dwarf2dbg_relax_frag(pfVar21)" identifier (argument_list "(pfVar21)" ( identifier )))) ;) (expression_statement "pfVar16 = pfVar21->fr_next;" (assignment_expression "pfVar16 = pfVar21->fr_next" identifier = (field_expression "pfVar21->fr_next" identifier -> field_identifier)) ;) (expression_statement "uVar28 = (ulong)iVar10;" (assignment_expression "uVar28 = (ulong)iVar10" identifier = (cast_expression "(ulong)iVar10" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (goto_statement "goto joined_r0x00131369;" goto statement_identifier ;)) })) }) while (parenthesized_expression "( true )" ( true )) ;) (labeled_statement "code_r0x00131269:\n  local_54 = 1;" statement_identifier : (expression_statement "local_54 = 1;" (assignment_expression "local_54 = 1" identifier = number_literal) ;)) (expression_statement "pfVar21 = pfVar16;" (assignment_expression "pfVar21 = pfVar16" identifier = identifier) ;) (expression_statement "aVar27 = aVar5;" (assignment_expression "aVar27 = aVar5" identifier = identifier) ;) (goto_statement "goto LAB_00131000;" goto statement_identifier ;) })))
(translation_unit "undefined4 FUN_00130f10(ulong *param_1,undefined8 *param_2,int param_3)\n\n{\n  ulong *puVar1;\n  undefined4 uVar2;\n  bool bVar3;\n  int iVar4;\n  uint uVar5;\n  ulong uVar6;\n  ulong uVar7;\n  long lVar8;\n  long lVar9;\n  undefined8 uVar10;\n  ulong *puVar11;\n  undefined8 uVar12;\n  ulong *puVar13;\n  long lVar14;\n  ulong uVar15;\n  ulong uVar16;\n  uint uVar17;\n  uint uVar18;\n  short sVar19;\n  ulong uVar20;\n  undefined4 local_54;\n  ulong local_48;\n  \n  FUN_00129130(param_2,0);\n  if (param_1 == (ulong *)0x0) {\n    return 0;\n  }\n  sVar19 = 0;\n  uVar20 = 0;\n  puVar13 = param_1;\n  lVar14 = 0;\n  do {\n    lVar8 = lVar14;\n    uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);\n    *puVar13 = uVar20;\n    *(short *)(puVar13 + 0xb) = sVar19;\n    uVar20 = puVar13[2] + uVar20;\n    *(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;\n    switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }\n    lVar14 = lVar8 + 1;\n  } while (puVar13 != (ulong *)0x0);\n  local_48 = lVar8 + 1;\n  local_54 = 0;\n  if (local_48 <= local_48 * local_48) {\n    local_48 = local_48 * local_48;\n  }\n  uVar18 = 0;\n  do {\n    if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }\n    bVar3 = false;\n    lVar14 = 0;\n    puVar13 = param_1;\n    uVar20 = *param_1;\nLAB_00131000:\n    uVar7 = lVar14 + uVar20;\n    uVar15 = puVar13[5];\n    *puVar13 = uVar7;\n    uVar6 = puVar13[4];\n    iVar4 = *(int *)((long)puVar13 + 0x5c);\n    *(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;\n    switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }\n  } while( true );\ncode_r0x00131269:\n  local_54 = 1;\n  puVar13 = puVar11;\n  uVar20 = uVar15;\n  goto LAB_00131000;\n}\n\n" (function_definition "undefined4 FUN_00130f10(ulong *param_1,undefined8 *param_2,int param_3)\n\n{\n  ulong *puVar1;\n  undefined4 uVar2;\n  bool bVar3;\n  int iVar4;\n  uint uVar5;\n  ulong uVar6;\n  ulong uVar7;\n  long lVar8;\n  long lVar9;\n  undefined8 uVar10;\n  ulong *puVar11;\n  undefined8 uVar12;\n  ulong *puVar13;\n  long lVar14;\n  ulong uVar15;\n  ulong uVar16;\n  uint uVar17;\n  uint uVar18;\n  short sVar19;\n  ulong uVar20;\n  undefined4 local_54;\n  ulong local_48;\n  \n  FUN_00129130(param_2,0);\n  if (param_1 == (ulong *)0x0) {\n    return 0;\n  }\n  sVar19 = 0;\n  uVar20 = 0;\n  puVar13 = param_1;\n  lVar14 = 0;\n  do {\n    lVar8 = lVar14;\n    uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);\n    *puVar13 = uVar20;\n    *(short *)(puVar13 + 0xb) = sVar19;\n    uVar20 = puVar13[2] + uVar20;\n    *(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;\n    switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }\n    lVar14 = lVar8 + 1;\n  } while (puVar13 != (ulong *)0x0);\n  local_48 = lVar8 + 1;\n  local_54 = 0;\n  if (local_48 <= local_48 * local_48) {\n    local_48 = local_48 * local_48;\n  }\n  uVar18 = 0;\n  do {\n    if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }\n    bVar3 = false;\n    lVar14 = 0;\n    puVar13 = param_1;\n    uVar20 = *param_1;\nLAB_00131000:\n    uVar7 = lVar14 + uVar20;\n    uVar15 = puVar13[5];\n    *puVar13 = uVar7;\n    uVar6 = puVar13[4];\n    iVar4 = *(int *)((long)puVar13 + 0x5c);\n    *(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;\n    switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }\n  } while( true );\ncode_r0x00131269:\n  local_54 = 1;\n  puVar13 = puVar11;\n  uVar20 = uVar15;\n  goto LAB_00131000;\n}" type_identifier (function_declarator "FUN_00130f10(ulong *param_1,undefined8 *param_2,int param_3)" identifier (parameter_list "(ulong *param_1,undefined8 *param_2,int param_3)" ( (parameter_declaration "ulong *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "undefined8 *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "int param_3" primitive_type identifier) ))) (compound_statement "{\n  ulong *puVar1;\n  undefined4 uVar2;\n  bool bVar3;\n  int iVar4;\n  uint uVar5;\n  ulong uVar6;\n  ulong uVar7;\n  long lVar8;\n  long lVar9;\n  undefined8 uVar10;\n  ulong *puVar11;\n  undefined8 uVar12;\n  ulong *puVar13;\n  long lVar14;\n  ulong uVar15;\n  ulong uVar16;\n  uint uVar17;\n  uint uVar18;\n  short sVar19;\n  ulong uVar20;\n  undefined4 local_54;\n  ulong local_48;\n  \n  FUN_00129130(param_2,0);\n  if (param_1 == (ulong *)0x0) {\n    return 0;\n  }\n  sVar19 = 0;\n  uVar20 = 0;\n  puVar13 = param_1;\n  lVar14 = 0;\n  do {\n    lVar8 = lVar14;\n    uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);\n    *puVar13 = uVar20;\n    *(short *)(puVar13 + 0xb) = sVar19;\n    uVar20 = puVar13[2] + uVar20;\n    *(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;\n    switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }\n    lVar14 = lVar8 + 1;\n  } while (puVar13 != (ulong *)0x0);\n  local_48 = lVar8 + 1;\n  local_54 = 0;\n  if (local_48 <= local_48 * local_48) {\n    local_48 = local_48 * local_48;\n  }\n  uVar18 = 0;\n  do {\n    if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }\n    bVar3 = false;\n    lVar14 = 0;\n    puVar13 = param_1;\n    uVar20 = *param_1;\nLAB_00131000:\n    uVar7 = lVar14 + uVar20;\n    uVar15 = puVar13[5];\n    *puVar13 = uVar7;\n    uVar6 = puVar13[4];\n    iVar4 = *(int *)((long)puVar13 + 0x5c);\n    *(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;\n    switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }\n  } while( true );\ncode_r0x00131269:\n  local_54 = 1;\n  puVar13 = puVar11;\n  uVar20 = uVar15;\n  goto LAB_00131000;\n}" { (declaration "ulong *puVar1;" type_identifier (pointer_declarator "*puVar1" * identifier) ;) (declaration "undefined4 uVar2;" type_identifier identifier ;) (declaration "bool bVar3;" primitive_type identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "uint uVar5;" type_identifier identifier ;) (declaration "ulong uVar6;" type_identifier identifier ;) (declaration "ulong uVar7;" type_identifier identifier ;) (declaration "long lVar8;" (sized_type_specifier "long" long) identifier ;) (declaration "long lVar9;" (sized_type_specifier "long" long) identifier ;) (declaration "undefined8 uVar10;" type_identifier identifier ;) (declaration "ulong *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "undefined8 uVar12;" type_identifier identifier ;) (declaration "ulong *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "long lVar14;" (sized_type_specifier "long" long) identifier ;) (declaration "ulong uVar15;" type_identifier identifier ;) (declaration "ulong uVar16;" type_identifier identifier ;) (declaration "uint uVar17;" type_identifier identifier ;) (declaration "uint uVar18;" type_identifier identifier ;) (declaration "short sVar19;" (sized_type_specifier "short" short) identifier ;) (declaration "ulong uVar20;" type_identifier identifier ;) (declaration "undefined4 local_54;" type_identifier identifier ;) (declaration "ulong local_48;" type_identifier identifier ;) (expression_statement "FUN_00129130(param_2,0);" (call_expression "FUN_00129130(param_2,0)" identifier (argument_list "(param_2,0)" ( identifier , number_literal ))) ;) (if_statement "if (param_1 == (ulong *)0x0) {\n    return 0;\n  }" if (parenthesized_expression "(param_1 == (ulong *)0x0)" ( (binary_expression "param_1 == (ulong *)0x0" identifier == (cast_expression "(ulong *)0x0" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    return 0;\n  }" { (return_statement "return 0;" return number_literal ;) })) (expression_statement "sVar19 = 0;" (assignment_expression "sVar19 = 0" identifier = number_literal) ;) (expression_statement "uVar20 = 0;" (assignment_expression "uVar20 = 0" identifier = number_literal) ;) (expression_statement "puVar13 = param_1;" (assignment_expression "puVar13 = param_1" identifier = identifier) ;) (expression_statement "lVar14 = 0;" (assignment_expression "lVar14 = 0" identifier = number_literal) ;) (do_statement "do {\n    lVar8 = lVar14;\n    uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);\n    *puVar13 = uVar20;\n    *(short *)(puVar13 + 0xb) = sVar19;\n    uVar20 = puVar13[2] + uVar20;\n    *(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;\n    switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }\n    lVar14 = lVar8 + 1;\n  } while (puVar13 != (ulong *)0x0);" do (compound_statement "{\n    lVar8 = lVar14;\n    uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);\n    *puVar13 = uVar20;\n    *(short *)(puVar13 + 0xb) = sVar19;\n    uVar20 = puVar13[2] + uVar20;\n    *(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;\n    switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }\n    lVar14 = lVar8 + 1;\n  }" { (expression_statement "lVar8 = lVar14;" (assignment_expression "lVar8 = lVar14" identifier = identifier) ;) (expression_statement "uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);" (assignment_expression "uVar2 = *(undefined4 *)((long)puVar13 + 0x5c)" identifier = (pointer_expression "*(undefined4 *)((long)puVar13 + 0x5c)" * (cast_expression "(undefined4 *)((long)puVar13 + 0x5c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5c)" ( (binary_expression "(long)puVar13 + 0x5c" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (expression_statement "*puVar13 = uVar20;" (assignment_expression "*puVar13 = uVar20" (pointer_expression "*puVar13" * identifier) = identifier) ;) (expression_statement "*(short *)(puVar13 + 0xb) = sVar19;" (assignment_expression "*(short *)(puVar13 + 0xb) = sVar19" (pointer_expression "*(short *)(puVar13 + 0xb)" * (cast_expression "(short *)(puVar13 + 0xb)" ( (type_descriptor "short *" (sized_type_specifier "short" short) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar13 + 0xb)" ( (binary_expression "puVar13 + 0xb" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar20 = puVar13[2] + uVar20;" (assignment_expression "uVar20 = puVar13[2] + uVar20" identifier = (binary_expression "puVar13[2] + uVar20" (subscript_expression "puVar13[2]" identifier [ number_literal ]) + identifier)) ;) (expression_statement "*(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;" (assignment_expression "*(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe" (pointer_expression "*(byte *)((long)puVar13 + 0x5a)" * (cast_expression "(byte *)((long)puVar13 + 0x5a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5a)" ( (binary_expression "(long)puVar13 + 0x5a" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = (binary_expression "*(byte *)((long)puVar13 + 0x5a) & 0xfe" (pointer_expression "*(byte *)((long)puVar13 + 0x5a)" * (cast_expression "(byte *)((long)puVar13 + 0x5a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5a)" ( (binary_expression "(long)puVar13 + 0x5a" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal)) ;) (switch_statement "switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }" switch (parenthesized_expression "(uVar2)" ( identifier )) (compound_statement "{\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }" { (case_statement "case 0:" case number_literal :) (case_statement "case 6:" case number_literal :) (case_statement "case 10:" case number_literal :) (case_statement "default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");" default : (expression_statement "uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" identifier = (call_expression "dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" identifier (argument_list "(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" ( number_literal , (string_literal ""Case value %ld unexpected at line %d of file \"%s\"\n"" " string_content escape_sequence string_content escape_sequence escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");" (call_expression "FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c")" identifier (argument_list "(uVar12,uVar2,0xaa0,"../../gas/write.c")" ( identifier , identifier , number_literal , (string_literal ""../../gas/write.c"" " string_content ") ))) ;)) (case_statement "case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;" case number_literal : (expression_statement "puVar11 = puVar13 + 4;" (assignment_expression "puVar11 = puVar13 + 4" identifier = (binary_expression "puVar13 + 4" identifier + number_literal)) ;) (expression_statement "puVar1 = puVar13 + 3;" (assignment_expression "puVar1 = puVar13 + 3" identifier = (binary_expression "puVar13 + 3" identifier + number_literal)) ;) (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "uVar20 = *puVar11 * *puVar1 + uVar20;" (assignment_expression "uVar20 = *puVar11 * *puVar1 + uVar20" identifier = (binary_expression "*puVar11 * *puVar1 + uVar20" (binary_expression "*puVar11 * *puVar1" (pointer_expression "*puVar11" * identifier) * (pointer_expression "*puVar1" * identifier)) + identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 2:" case number_literal :) (case_statement "case 3:" case number_literal :) (case_statement "case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }" case number_literal : (expression_statement "uVar6 = -1L << ((byte)puVar13[4] & 0x3f);" (assignment_expression "uVar6 = -1L << ((byte)puVar13[4] & 0x3f)" identifier = (binary_expression "-1L << ((byte)puVar13[4] & 0x3f)" number_literal << (parenthesized_expression "((byte)puVar13[4] & 0x3f)" ( (binary_expression "(byte)puVar13[4] & 0x3f" (cast_expression "(byte)puVar13[4]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "puVar13[4]" identifier [ number_literal ])) & number_literal) )))) ;) (expression_statement "uVar6 = ~uVar6 + uVar20 & uVar6;" (assignment_expression "uVar6 = ~uVar6 + uVar20 & uVar6" identifier = (binary_expression "~uVar6 + uVar20 & uVar6" (binary_expression "~uVar6 + uVar20" (unary_expression "~uVar6" ~ identifier) + identifier) & identifier)) ;) (expression_statement "uVar7 = uVar6 - uVar20;" (assignment_expression "uVar7 = uVar6 - uVar20" identifier = (binary_expression "uVar6 - uVar20" identifier - identifier)) ;) (if_statement "if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }" if (parenthesized_expression "((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0))" ( (binary_expression "(((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)" (parenthesized_expression "(((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc]))" ( (binary_expression "((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])" (parenthesized_expression "((uint)puVar13[0xc] == 0)" ( (binary_expression "(uint)puVar13[0xc] == 0" (cast_expression "(uint)puVar13[0xc]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puVar13[0xc]" identifier [ number_literal ])) == number_literal) )) || (parenthesized_expression "(uVar7 <= (uint)puVar13[0xc])" ( (binary_expression "uVar7 <= (uint)puVar13[0xc]" identifier <= (cast_expression "(uint)puVar13[0xc]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puVar13[0xc]" identifier [ number_literal ]))) ))) )) && (parenthesized_expression "(uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)" ( (comma_expression "uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0" (assignment_expression "uVar15 = puVar13[3]" identifier = (subscript_expression "puVar13[3]" identifier [ number_literal ])) , (comma_expression "uVar20 = uVar6, uVar7 % uVar15 != 0" (assignment_expression "uVar20 = uVar6" identifier = identifier) , (binary_expression "uVar7 % uVar15 != 0" (binary_expression "uVar7 % uVar15" identifier % identifier) != number_literal))) ))) )) (compound_statement "{\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }" { (expression_statement "uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);" (assignment_expression "uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5)" identifier = (call_expression "dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5)" identifier (argument_list "(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5)" ( number_literal , (string_literal ""alignment padding (%lu byte) not a multiple of %ld"" " string_content ") , (string_literal ""alignment padding (%lu bytes) not a multiple of %ld"" " string_content ") , identifier , number_literal )))) ;) (expression_statement "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);" (call_expression "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15)" identifier (argument_list "(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15)" ( (subscript_expression "puVar13[8]" identifier [ number_literal ]) , (cast_expression "(int)puVar13[9]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "puVar13[9]" identifier [ number_literal ])) , identifier , identifier , identifier ))) ;) (expression_statement "uVar20 = uVar6 - uVar7 % puVar13[3];" (assignment_expression "uVar20 = uVar6 - uVar7 % puVar13[3]" identifier = (binary_expression "uVar6 - uVar7 % puVar13[3]" identifier - (binary_expression "uVar7 % puVar13[3]" identifier % (subscript_expression "puVar13[3]" identifier [ number_literal ])))) ;) }))) (case_statement "case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;" case number_literal : (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "sVar19 = sVar19 + 1;" (assignment_expression "sVar19 = sVar19 + 1" identifier = (binary_expression "sVar19 + 1" identifier + number_literal)) ;) (break_statement "break;" break ;)) (case_statement "case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;" case number_literal : (if_statement "if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }" if (parenthesized_expression "(puVar13[5] != 0)" ( (binary_expression "puVar13[5] != 0" (subscript_expression "puVar13[5]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n        FUN_0012b400();\n      }" { (expression_statement "FUN_0012b400();" (call_expression "FUN_0012b400()" identifier (argument_list "()" ( ))) ;) })) (expression_statement "iVar4 = FUN_00136870(puVar13,param_2);" (assignment_expression "iVar4 = FUN_00136870(puVar13,param_2)" identifier = (call_expression "FUN_00136870(puVar13,param_2)" identifier (argument_list "(puVar13,param_2)" ( identifier , identifier )))) ;) (expression_statement "uVar20 = (long)iVar4 + uVar20;" (assignment_expression "uVar20 = (long)iVar4 + uVar20" identifier = (binary_expression "(long)iVar4 + uVar20" (cast_expression "(long)iVar4" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier)) ;)) (case_statement "case 8:" case number_literal :) (case_statement "case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;" case number_literal : (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (break_statement "break;" break ;)) (case_statement "case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;" case number_literal : (expression_statement "puVar13[4] = 1;" (assignment_expression "puVar13[4] = 1" (subscript_expression "puVar13[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "uVar20 = uVar20 + 1;" (assignment_expression "uVar20 = uVar20 + 1" identifier = (binary_expression "uVar20 + 1" identifier + number_literal)) ;) (break_statement "break;" break ;)) (case_statement "case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;" case number_literal : (expression_statement "iVar4 = FUN_00115780(puVar13);" (assignment_expression "iVar4 = FUN_00115780(puVar13)" identifier = (call_expression "FUN_00115780(puVar13)" identifier (argument_list "(puVar13)" ( identifier )))) ;) (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "uVar20 = (long)iVar4 + uVar20;" (assignment_expression "uVar20 = (long)iVar4 + uVar20" identifier = (binary_expression "(long)iVar4 + uVar20" (cast_expression "(long)iVar4" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;" case number_literal : (expression_statement "iVar4 = FUN_00111530(puVar13);" (assignment_expression "iVar4 = FUN_00111530(puVar13)" identifier = (call_expression "FUN_00111530(puVar13)" identifier (argument_list "(puVar13)" ( identifier )))) ;) (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "uVar20 = (long)iVar4 + uVar20;" (assignment_expression "uVar20 = (long)iVar4 + uVar20" identifier = (binary_expression "(long)iVar4 + uVar20" (cast_expression "(long)iVar4" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + identifier)) ;)) })) (expression_statement "lVar14 = lVar8 + 1;" (assignment_expression "lVar14 = lVar8 + 1" identifier = (binary_expression "lVar8 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(puVar13 != (ulong *)0x0)" ( (binary_expression "puVar13 != (ulong *)0x0" identifier != (cast_expression "(ulong *)0x0" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) (expression_statement "local_48 = lVar8 + 1;" (assignment_expression "local_48 = lVar8 + 1" identifier = (binary_expression "lVar8 + 1" identifier + number_literal)) ;) (expression_statement "local_54 = 0;" (assignment_expression "local_54 = 0" identifier = number_literal) ;) (if_statement "if (local_48 <= local_48 * local_48) {\n    local_48 = local_48 * local_48;\n  }" if (parenthesized_expression "(local_48 <= local_48 * local_48)" ( (binary_expression "local_48 <= local_48 * local_48" identifier <= (binary_expression "local_48 * local_48" identifier * identifier)) )) (compound_statement "{\n    local_48 = local_48 * local_48;\n  }" { (expression_statement "local_48 = local_48 * local_48;" (assignment_expression "local_48 = local_48 * local_48" identifier = (binary_expression "local_48 * local_48" identifier * identifier)) ;) })) (expression_statement "uVar18 = 0;" (assignment_expression "uVar18 = 0" identifier = number_literal) ;) (do_statement "do {\n    if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }\n    bVar3 = false;\n    lVar14 = 0;\n    puVar13 = param_1;\n    uVar20 = *param_1;\nLAB_00131000:\n    uVar7 = lVar14 + uVar20;\n    uVar15 = puVar13[5];\n    *puVar13 = uVar7;\n    uVar6 = puVar13[4];\n    iVar4 = *(int *)((long)puVar13 + 0x5c);\n    *(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;\n    switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }\n  } while( true );" do (compound_statement "{\n    if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }\n    bVar3 = false;\n    lVar14 = 0;\n    puVar13 = param_1;\n    uVar20 = *param_1;\nLAB_00131000:\n    uVar7 = lVar14 + uVar20;\n    uVar15 = puVar13[5];\n    *puVar13 = uVar7;\n    uVar6 = puVar13[4];\n    iVar4 = *(int *)((long)puVar13 + 0x5c);\n    *(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;\n    switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }\n  }" { (if_statement "if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }" if (parenthesized_expression "(param_1 == (ulong *)0x0)" ( (binary_expression "param_1 == (ulong *)0x0" identifier == (cast_expression "(ulong *)0x0" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      return local_54;\n    }" { (return_statement "return local_54;" return identifier ;) })) (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" identifier = false) ;) (expression_statement "lVar14 = 0;" (assignment_expression "lVar14 = 0" identifier = number_literal) ;) (expression_statement "puVar13 = param_1;" (assignment_expression "puVar13 = param_1" identifier = identifier) ;) (expression_statement "uVar20 = *param_1;" (assignment_expression "uVar20 = *param_1" identifier = (pointer_expression "*param_1" * identifier)) ;) (labeled_statement "LAB_00131000:\n    uVar7 = lVar14 + uVar20;" statement_identifier : (expression_statement "uVar7 = lVar14 + uVar20;" (assignment_expression "uVar7 = lVar14 + uVar20" identifier = (binary_expression "lVar14 + uVar20" identifier + identifier)) ;)) (expression_statement "uVar15 = puVar13[5];" (assignment_expression "uVar15 = puVar13[5]" identifier = (subscript_expression "puVar13[5]" identifier [ number_literal ])) ;) (expression_statement "*puVar13 = uVar7;" (assignment_expression "*puVar13 = uVar7" (pointer_expression "*puVar13" * identifier) = identifier) ;) (expression_statement "uVar6 = puVar13[4];" (assignment_expression "uVar6 = puVar13[4]" identifier = (subscript_expression "puVar13[4]" identifier [ number_literal ])) ;) (expression_statement "iVar4 = *(int *)((long)puVar13 + 0x5c);" (assignment_expression "iVar4 = *(int *)((long)puVar13 + 0x5c)" identifier = (pointer_expression "*(int *)((long)puVar13 + 0x5c)" * (cast_expression "(int *)((long)puVar13 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5c)" ( (binary_expression "(long)puVar13 + 0x5c" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (expression_statement "*(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;" (assignment_expression "*(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1" (pointer_expression "*(byte *)((long)puVar13 + 0x5a)" * (cast_expression "(byte *)((long)puVar13 + 0x5a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5a)" ( (binary_expression "(long)puVar13 + 0x5a" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = (binary_expression "*(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1" (binary_expression "*(byte *)((long)puVar13 + 0x5a) & 0xfe" (pointer_expression "*(byte *)((long)puVar13 + 0x5a)" * (cast_expression "(byte *)((long)puVar13 + 0x5a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5a)" ( (binary_expression "(long)puVar13 + 0x5a" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) | (binary_expression "*(byte *)((long)puVar13 + 0x5a) & 1 ^ 1" (binary_expression "*(byte *)((long)puVar13 + 0x5a) & 1" (pointer_expression "*(byte *)((long)puVar13 + 0x5a)" * (cast_expression "(byte *)((long)puVar13 + 0x5a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5a)" ( (binary_expression "(long)puVar13 + 0x5a" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) ^ number_literal))) ;) (switch_statement "switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }" switch (parenthesized_expression "(iVar4)" ( identifier )) (compound_statement "{\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }" { (case_statement "case 0:" case number_literal :) (case_statement "case 6:" case number_literal :) (case_statement "case 10:" case number_literal :) (case_statement "default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");" default : (expression_statement "uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" identifier = (call_expression "dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" identifier (argument_list "(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" ( number_literal , (string_literal ""Case value %ld unexpected at line %d of file \"%s\"\n"" " string_content escape_sequence string_content escape_sequence escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");" (call_expression "FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c")" identifier (argument_list "(uVar12,iVar4,0xbf4,"../../gas/write.c")" ( identifier , identifier , number_literal , (string_literal ""../../gas/write.c"" " string_content ") ))) ;)) (case_statement "case 2:" case number_literal :) (case_statement "case 3:" case number_literal :) (case_statement "case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;" case number_literal : (expression_statement "uVar6 = -1L << ((byte)uVar6 & 0x3f);" (assignment_expression "uVar6 = -1L << ((byte)uVar6 & 0x3f)" identifier = (binary_expression "-1L << ((byte)uVar6 & 0x3f)" number_literal << (parenthesized_expression "((byte)uVar6 & 0x3f)" ( (binary_expression "(byte)uVar6 & 0x3f" (cast_expression "(byte)uVar6" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) )))) ;) (expression_statement "lVar8 = puVar13[2] + uVar20;" (assignment_expression "lVar8 = puVar13[2] + uVar20" identifier = (binary_expression "puVar13[2] + uVar20" (subscript_expression "puVar13[2]" identifier [ number_literal ]) + identifier)) ;) (expression_statement "lVar9 = uVar7 + puVar13[2];" (assignment_expression "lVar9 = uVar7 + puVar13[2]" identifier = (binary_expression "uVar7 + puVar13[2]" identifier + (subscript_expression "puVar13[2]" identifier [ number_literal ]))) ;) (expression_statement "uVar15 = (ulong)(uint)puVar13[0xc];" (assignment_expression "uVar15 = (ulong)(uint)puVar13[0xc]" identifier = (cast_expression "(ulong)(uint)puVar13[0xc]" ( (type_descriptor "ulong" type_identifier) ) (cast_expression "(uint)puVar13[0xc]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puVar13[0xc]" identifier [ number_literal ])))) ;) (expression_statement "uVar16 = lVar8 + ~uVar6 & uVar6;" (assignment_expression "uVar16 = lVar8 + ~uVar6 & uVar6" identifier = (binary_expression "lVar8 + ~uVar6 & uVar6" (binary_expression "lVar8 + ~uVar6" identifier + (unary_expression "~uVar6" ~ identifier)) & identifier)) ;) (expression_statement "uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;" (assignment_expression "uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9" identifier = (binary_expression "(lVar9 + ~uVar6 & uVar6) - lVar9" (parenthesized_expression "(lVar9 + ~uVar6 & uVar6)" ( (binary_expression "lVar9 + ~uVar6 & uVar6" (binary_expression "lVar9 + ~uVar6" identifier + (unary_expression "~uVar6" ~ identifier)) & identifier) )) - identifier)) ;) (if_statement "if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }" if (parenthesized_expression "((uint)puVar13[0xc] == 0)" ( (binary_expression "(uint)puVar13[0xc] == 0" (cast_expression "(uint)puVar13[0xc]" ( (type_descriptor "uint" type_identifier) ) (subscript_expression "puVar13[0xc]" identifier [ number_literal ])) == number_literal) )) (compound_statement "{\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }" { (expression_statement "uVar6 = (lVar8 - uVar16) + uVar20;" (assignment_expression "uVar6 = (lVar8 - uVar16) + uVar20" identifier = (binary_expression "(lVar8 - uVar16) + uVar20" (parenthesized_expression "(lVar8 - uVar16)" ( (binary_expression "lVar8 - uVar16" identifier - identifier) )) + identifier)) ;) }) (else_clause "else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }" else (if_statement "if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }" if (parenthesized_expression "(uVar15 < uVar16 - lVar8)" ( (binary_expression "uVar15 < uVar16 - lVar8" identifier < (binary_expression "uVar16 - lVar8" identifier - identifier)) )) (compound_statement "{\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }" { (expression_statement "uVar6 = uVar20;" (assignment_expression "uVar6 = uVar20" identifier = identifier) ;) (if_statement "if (uVar15 < uVar20) goto switchD_00131039_caseD_1;" if (parenthesized_expression "(uVar15 < uVar20)" ( (binary_expression "uVar15 < uVar20" identifier < identifier) )) (goto_statement "goto switchD_00131039_caseD_1;" goto statement_identifier ;)) }) (else_clause "else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }" else (compound_statement "{\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }" { (expression_statement "uVar6 = (lVar8 - uVar16) + uVar20;" (assignment_expression "uVar6 = (lVar8 - uVar16) + uVar20" identifier = (binary_expression "(lVar8 - uVar16) + uVar20" (parenthesized_expression "(lVar8 - uVar16)" ( (binary_expression "lVar8 - uVar16" identifier - identifier) )) + identifier)) ;) (if_statement "if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }" if (parenthesized_expression "(uVar15 < uVar20)" ( (binary_expression "uVar15 < uVar20" identifier < identifier) )) (compound_statement "{\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }" { (expression_statement "uVar20 = 0;" (assignment_expression "uVar20 = 0" identifier = number_literal) ;) (expression_statement "uVar6 = lVar8 - uVar16;" (assignment_expression "uVar6 = lVar8 - uVar16" identifier = (binary_expression "lVar8 - uVar16" identifier - identifier)) ;) })) }))))) (if_statement "if (-1 < (long)uVar6) goto LAB_001312d8;" if (parenthesized_expression "(-1 < (long)uVar6)" ( (binary_expression "-1 < (long)uVar6" number_literal < (cast_expression "(long)uVar6" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier)) )) (goto_statement "goto LAB_001312d8;" goto statement_identifier ;)) (if_statement "if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }" if (parenthesized_expression "(((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0))" ( (binary_expression "((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)" (parenthesized_expression "((uVar18 & 0x10) != 0)" ( (binary_expression "(uVar18 & 0x10) != 0" (parenthesized_expression "(uVar18 & 0x10)" ( (binary_expression "uVar18 & 0x10" identifier & number_literal) )) != number_literal) )) && (parenthesized_expression "((uVar18 & 0xe) != 0)" ( (binary_expression "(uVar18 & 0xe) != 0" (parenthesized_expression "(uVar18 & 0xe)" ( (binary_expression "uVar18 & 0xe" identifier & number_literal) )) != number_literal) ))) )) (compound_statement "{\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }" { (expression_statement "lVar8 = *(long *)param_2[0x15];" (assignment_expression "lVar8 = *(long *)param_2[0x15]" identifier = (pointer_expression "*(long *)param_2[0x15]" * (cast_expression "(long *)param_2[0x15]" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_2[0x15]" identifier [ number_literal ])))) ;) (expression_statement "puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);" (assignment_expression "puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30)" identifier = (cast_expression "(ulong *)FUN_00118840(lVar8 + 0x30)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_00118840(lVar8 + 0x30)" identifier (argument_list "(lVar8 + 0x30)" ( (binary_expression "lVar8 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);" (assignment_expression "lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48)" identifier = (binary_expression "puVar13[3] + *(long *)(lVar8 + 0x48)" (subscript_expression "puVar13[3]" identifier [ number_literal ]) + (pointer_expression "*(long *)(lVar8 + 0x48)" * (cast_expression "(long *)(lVar8 + 0x48)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x48)" ( (binary_expression "lVar8 + 0x48" identifier + number_literal) )))))) ;) (expression_statement "*(long *)(lVar8 + 0x48) = lVar9;" (assignment_expression "*(long *)(lVar8 + 0x48) = lVar9" (pointer_expression "*(long *)(lVar8 + 0x48)" * (cast_expression "(long *)(lVar8 + 0x48)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x48)" ( (binary_expression "lVar8 + 0x48" identifier + number_literal) )))) = identifier) ;) (if_statement "if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }" if (parenthesized_expression "(lVar9 == *(long *)(lVar8 + 0x40))" ( (binary_expression "lVar9 == *(long *)(lVar8 + 0x40)" identifier == (pointer_expression "*(long *)(lVar8 + 0x40)" * (cast_expression "(long *)(lVar8 + 0x40)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x40)" ( (binary_expression "lVar8 + 0x40" identifier + number_literal) ))))) )) (compound_statement "{\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }" { (expression_statement "*(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;" (assignment_expression "*(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2" (pointer_expression "*(byte *)(lVar8 + 0x80)" * (cast_expression "(byte *)(lVar8 + 0x80)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x80)" ( (binary_expression "lVar8 + 0x80" identifier + number_literal) )))) = (binary_expression "*(byte *)(lVar8 + 0x80) | 2" (pointer_expression "*(byte *)(lVar8 + 0x80)" * (cast_expression "(byte *)(lVar8 + 0x80)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x80)" ( (binary_expression "lVar8 + 0x80" identifier + number_literal) )))) | number_literal)) ;) })) (expression_statement "uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);" (assignment_expression "uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60)" identifier = (binary_expression "lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60)" (binary_expression "lVar9 + *(ulong *)(lVar8 + 0x60)" identifier + (pointer_expression "*(ulong *)(lVar8 + 0x60)" * (cast_expression "(ulong *)(lVar8 + 0x60)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x60)" ( (binary_expression "lVar8 + 0x60" identifier + number_literal) ))))) & (unary_expression "~*(ulong *)(lVar8 + 0x60)" ~ (pointer_expression "*(ulong *)(lVar8 + 0x60)" * (cast_expression "(ulong *)(lVar8 + 0x60)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x60)" ( (binary_expression "lVar8 + 0x60" identifier + number_literal) ))))))) ;) (expression_statement "uVar15 = *(ulong *)(lVar8 + 0x50);" (assignment_expression "uVar15 = *(ulong *)(lVar8 + 0x50)" identifier = (pointer_expression "*(ulong *)(lVar8 + 0x50)" * (cast_expression "(ulong *)(lVar8 + 0x50)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x50)" ( (binary_expression "lVar8 + 0x50" identifier + number_literal) ))))) ;) (expression_statement "*(ulong *)(lVar8 + 0x48) = uVar16;" (assignment_expression "*(ulong *)(lVar8 + 0x48) = uVar16" (pointer_expression "*(ulong *)(lVar8 + 0x48)" * (cast_expression "(ulong *)(lVar8 + 0x48)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x48)" ( (binary_expression "lVar8 + 0x48" identifier + number_literal) )))) = identifier) ;) (if_statement "if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }" if (parenthesized_expression "(uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38))" ( (binary_expression "uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)" (binary_expression "uVar15 - *(long *)(lVar8 + 0x38)" identifier - (pointer_expression "*(long *)(lVar8 + 0x38)" * (cast_expression "(long *)(lVar8 + 0x38)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x38)" ( (binary_expression "lVar8 + 0x38" identifier + number_literal) ))))) < (binary_expression "uVar16 - *(long *)(lVar8 + 0x38)" identifier - (pointer_expression "*(long *)(lVar8 + 0x38)" * (cast_expression "(long *)(lVar8 + 0x38)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x38)" ( (binary_expression "lVar8 + 0x38" identifier + number_literal) )))))) )) (compound_statement "{\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }" { (expression_statement "*(ulong *)(lVar8 + 0x48) = uVar15;" (assignment_expression "*(ulong *)(lVar8 + 0x48) = uVar15" (pointer_expression "*(ulong *)(lVar8 + 0x48)" * (cast_expression "(ulong *)(lVar8 + 0x48)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x48)" ( (binary_expression "lVar8 + 0x48" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar16 = uVar15;" (assignment_expression "uVar16 = uVar15" identifier = identifier) ;) })) (expression_statement "*(ulong *)(lVar8 + 0x40) = uVar16;" (assignment_expression "*(ulong *)(lVar8 + 0x40) = uVar16" (pointer_expression "*(ulong *)(lVar8 + 0x40)" * (cast_expression "(ulong *)(lVar8 + 0x40)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x40)" ( (binary_expression "lVar8 + 0x40" identifier + number_literal) )))) = identifier) ;) (expression_statement "uVar15 = puVar13[1];" (assignment_expression "uVar15 = puVar13[1]" identifier = (subscript_expression "puVar13[1]" identifier [ number_literal ])) ;) (expression_statement "*puVar11 = *puVar13;" (assignment_expression "*puVar11 = *puVar13" (pointer_expression "*puVar11" * identifier) = (pointer_expression "*puVar13" * identifier)) ;) (expression_statement "puVar11[1] = uVar15;" (assignment_expression "puVar11[1] = uVar15" (subscript_expression "puVar11[1]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar15 = puVar13[3];" (assignment_expression "uVar15 = puVar13[3]" identifier = (subscript_expression "puVar13[3]" identifier [ number_literal ])) ;) (expression_statement "puVar11[2] = puVar13[2];" (assignment_expression "puVar11[2] = puVar13[2]" (subscript_expression "puVar11[2]" identifier [ number_literal ]) = (subscript_expression "puVar13[2]" identifier [ number_literal ])) ;) (expression_statement "puVar11[3] = uVar15;" (assignment_expression "puVar11[3] = uVar15" (subscript_expression "puVar11[3]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar15 = puVar13[5];" (assignment_expression "uVar15 = puVar13[5]" identifier = (subscript_expression "puVar13[5]" identifier [ number_literal ])) ;) (expression_statement "puVar11[4] = puVar13[4];" (assignment_expression "puVar11[4] = puVar13[4]" (subscript_expression "puVar11[4]" identifier [ number_literal ]) = (subscript_expression "puVar13[4]" identifier [ number_literal ])) ;) (expression_statement "puVar11[5] = uVar15;" (assignment_expression "puVar11[5] = uVar15" (subscript_expression "puVar11[5]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar15 = puVar13[7];" (assignment_expression "uVar15 = puVar13[7]" identifier = (subscript_expression "puVar13[7]" identifier [ number_literal ])) ;) (expression_statement "puVar11[6] = puVar13[6];" (assignment_expression "puVar11[6] = puVar13[6]" (subscript_expression "puVar11[6]" identifier [ number_literal ]) = (subscript_expression "puVar13[6]" identifier [ number_literal ])) ;) (expression_statement "puVar11[7] = uVar15;" (assignment_expression "puVar11[7] = uVar15" (subscript_expression "puVar11[7]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar15 = puVar13[9];" (assignment_expression "uVar15 = puVar13[9]" identifier = (subscript_expression "puVar13[9]" identifier [ number_literal ])) ;) (expression_statement "puVar11[8] = puVar13[8];" (assignment_expression "puVar11[8] = puVar13[8]" (subscript_expression "puVar11[8]" identifier [ number_literal ]) = (subscript_expression "puVar13[8]" identifier [ number_literal ])) ;) (expression_statement "puVar11[9] = uVar15;" (assignment_expression "puVar11[9] = uVar15" (subscript_expression "puVar11[9]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar15 = puVar13[0xb];" (assignment_expression "uVar15 = puVar13[0xb]" identifier = (subscript_expression "puVar13[0xb]" identifier [ number_literal ])) ;) (expression_statement "puVar11[10] = puVar13[10];" (assignment_expression "puVar11[10] = puVar13[10]" (subscript_expression "puVar11[10]" identifier [ number_literal ]) = (subscript_expression "puVar13[10]" identifier [ number_literal ])) ;) (expression_statement "puVar11[0xb] = uVar15;" (assignment_expression "puVar11[0xb] = uVar15" (subscript_expression "puVar11[0xb]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*(int *)(puVar11 + 0xc) = (int)puVar13[0xc];" (assignment_expression "*(int *)(puVar11 + 0xc) = (int)puVar13[0xc]" (pointer_expression "*(int *)(puVar11 + 0xc)" * (cast_expression "(int *)(puVar11 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar11 + 0xc)" ( (binary_expression "puVar11 + 0xc" identifier + number_literal) )))) = (cast_expression "(int)puVar13[0xc]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "puVar13[0xc]" identifier [ number_literal ]))) ;) (expression_statement "memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);" (call_expression "memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3])" identifier (argument_list "((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3])" ( (cast_expression "(void *)((long)puVar11 + 100)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar11 + 100)" ( (binary_expression "(long)puVar11 + 100" (cast_expression "(long)puVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))) , (cast_expression "(void *)((long)puVar13 + puVar13[2] + 100)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + puVar13[2] + 100)" ( (binary_expression "(long)puVar13 + puVar13[2] + 100" (binary_expression "(long)puVar13 + puVar13[2]" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (subscript_expression "puVar13[2]" identifier [ number_literal ])) + number_literal) ))) , (subscript_expression "puVar13[3]" identifier [ number_literal ]) ))) ;) (expression_statement "uVar15 = puVar13[4];" (assignment_expression "uVar15 = puVar13[4]" identifier = (subscript_expression "puVar13[4]" identifier [ number_literal ])) ;) (expression_statement "uVar20 = uVar20 + uVar7 + puVar13[2];" (assignment_expression "uVar20 = uVar20 + uVar7 + puVar13[2]" identifier = (binary_expression "uVar20 + uVar7 + puVar13[2]" (binary_expression "uVar20 + uVar7" identifier + identifier) + (subscript_expression "puVar13[2]" identifier [ number_literal ]))) ;) (expression_statement "*(undefined4 *)((long)puVar11 + 0x5c) = 1;" (assignment_expression "*(undefined4 *)((long)puVar11 + 0x5c) = 1" (pointer_expression "*(undefined4 *)((long)puVar11 + 0x5c)" * (cast_expression "(undefined4 *)((long)puVar11 + 0x5c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar11 + 0x5c)" ( (binary_expression "(long)puVar11 + 0x5c" (cast_expression "(long)puVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "*puVar11 = uVar20;" (assignment_expression "*puVar11 = uVar20" (pointer_expression "*puVar11" * identifier) = identifier) ;) (expression_statement "uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];" (assignment_expression "uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3]" identifier = (binary_expression "(1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3]" (parenthesized_expression "(1L << ((byte)uVar15 & 0x3f))" ( (binary_expression "1L << ((byte)uVar15 & 0x3f)" number_literal << (parenthesized_expression "((byte)uVar15 & 0x3f)" ( (binary_expression "(byte)uVar15 & 0x3f" (cast_expression "(byte)uVar15" ( (type_descriptor "byte" type_identifier) ) identifier) & number_literal) ))) )) / (cast_expression "(long)puVar13[3]" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) (subscript_expression "puVar13[3]" identifier [ number_literal ])))) ;) (expression_statement "puVar11[2] = 0;" (assignment_expression "puVar11[2] = 0" (subscript_expression "puVar11[2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar11[4] = uVar7;" (assignment_expression "puVar11[4] = uVar7" (subscript_expression "puVar11[4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "uVar15 = 1L << ((byte)puVar13[4] & 0x3f);" (assignment_expression "uVar15 = 1L << ((byte)puVar13[4] & 0x3f)" identifier = (binary_expression "1L << ((byte)puVar13[4] & 0x3f)" number_literal << (parenthesized_expression "((byte)puVar13[4] & 0x3f)" ( (binary_expression "(byte)puVar13[4] & 0x3f" (cast_expression "(byte)puVar13[4]" ( (type_descriptor "byte" type_identifier) ) (subscript_expression "puVar13[4]" identifier [ number_literal ])) & number_literal) )))) ;) (if_statement "if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }" if (parenthesized_expression "(uVar7 * puVar11[3] - uVar15 != 0)" ( (binary_expression "uVar7 * puVar11[3] - uVar15 != 0" (binary_expression "uVar7 * puVar11[3] - uVar15" (binary_expression "uVar7 * puVar11[3]" identifier * (subscript_expression "puVar11[3]" identifier [ number_literal ])) - identifier) != number_literal) )) (compound_statement "{\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }" { (expression_statement "puVar11[4] = uVar15;" (assignment_expression "puVar11[4] = uVar15" (subscript_expression "puVar11[4]" identifier [ number_literal ]) = identifier) ;) (expression_statement "puVar11[3] = 1;" (assignment_expression "puVar11[3] = 1" (subscript_expression "puVar11[3]" identifier [ number_literal ]) = number_literal) ;) })) (expression_statement "uVar6 = uVar6 + uVar15;" (assignment_expression "uVar6 = uVar6 + uVar15" identifier = (binary_expression "uVar6 + uVar15" identifier + identifier)) ;) (expression_statement "*puVar11 = uVar20 - (uVar6 + lVar14);" (assignment_expression "*puVar11 = uVar20 - (uVar6 + lVar14)" (pointer_expression "*puVar11" * identifier) = (binary_expression "uVar20 - (uVar6 + lVar14)" identifier - (parenthesized_expression "(uVar6 + lVar14)" ( (binary_expression "uVar6 + lVar14" identifier + identifier) )))) ;) (expression_statement "*(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;" (assignment_expression "*(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1" (pointer_expression "*(byte *)((long)puVar11 + 0x5a)" * (cast_expression "(byte *)((long)puVar11 + 0x5a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar11 + 0x5a)" ( (binary_expression "(long)puVar11 + 0x5a" (cast_expression "(long)puVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = (binary_expression "*(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1" (binary_expression "*(byte *)((long)puVar11 + 0x5a) & 0xfe" (pointer_expression "*(byte *)((long)puVar11 + 0x5a)" * (cast_expression "(byte *)((long)puVar11 + 0x5a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar11 + 0x5a)" ( (binary_expression "(long)puVar11 + 0x5a" (cast_expression "(long)puVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) | (binary_expression "*(byte *)((long)puVar11 + 0x5a) & 1 ^ 1" (binary_expression "*(byte *)((long)puVar11 + 0x5a) & 1" (pointer_expression "*(byte *)((long)puVar11 + 0x5a)" * (cast_expression "(byte *)((long)puVar11 + 0x5a)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar11 + 0x5a)" ( (binary_expression "(long)puVar11 + 0x5a" (cast_expression "(long)puVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) & number_literal) ^ number_literal))) ;) (expression_statement "puVar13[7] = (ulong)puVar11;" (assignment_expression "puVar13[7] = (ulong)puVar11" (subscript_expression "puVar13[7]" identifier [ number_literal ]) = (cast_expression "(ulong)puVar11" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (goto_statement "goto LAB_00131409;" goto statement_identifier ;) })) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "lVar14 = lVar14 + uVar6;" (assignment_expression "lVar14 = lVar14 + uVar6" identifier = (binary_expression "lVar14 + uVar6" identifier + identifier)) ;) (goto_statement "goto LAB_0013137d;" goto statement_identifier ;)) (case_statement "case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;" case number_literal : (if_statement "if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }" if (parenthesized_expression "(uVar15 != 0)" ( (binary_expression "uVar15 != 0" identifier != number_literal) )) (compound_statement "{\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }" { (expression_statement "lVar8 = FUN_0012af60(uVar15);" (assignment_expression "lVar8 = FUN_0012af60(uVar15)" identifier = (call_expression "FUN_0012af60(uVar15)" identifier (argument_list "(uVar15)" ( identifier )))) ;) (if_statement "if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }" if (parenthesized_expression "(*(long *)(lVar8 + 0x28) != 0)" ( (binary_expression "*(long *)(lVar8 + 0x28) != 0" (pointer_expression "*(long *)(lVar8 + 0x28)" * (cast_expression "(long *)(lVar8 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar8 + 0x28)" ( (binary_expression "lVar8 + 0x28" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }" { (expression_statement "FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");" (call_expression "FUN_0011f960("../../gas/write.c",0xb80,"relax_segment")" identifier (argument_list "("../../gas/write.c",0xb80,"relax_segment")" ( (string_literal ""../../gas/write.c"" " string_content ") , number_literal , (string_literal ""relax_segment"" " string_content ") ))) ;) })) (expression_statement "lVar8 = thunk_FUN_0012c290(uVar15);" (assignment_expression "lVar8 = thunk_FUN_0012c290(uVar15)" identifier = (call_expression "thunk_FUN_0012c290(uVar15)" identifier (argument_list "(uVar15)" ( identifier )))) ;) (expression_statement "uVar6 = uVar6 + lVar8;" (assignment_expression "uVar6 = uVar6 + lVar8" identifier = (binary_expression "uVar6 + lVar8" identifier + identifier)) ;) })) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (if_statement "if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }" if (parenthesized_expression "(puVar11 == (ulong *)0x0)" ( (binary_expression "puVar11 == (ulong *)0x0" identifier == (cast_expression "(ulong *)0x0" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }" { (expression_statement "FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");" (call_expression "FUN_0011f960("../../gas/write.c",0xb84,"relax_segment")" identifier (argument_list "("../../gas/write.c",0xb84,"relax_segment")" ( (string_literal ""../../gas/write.c"" " string_content ") , number_literal , (string_literal ""relax_segment"" " string_content ") ))) ;) })) (expression_statement "uVar15 = *puVar11;" (assignment_expression "uVar15 = *puVar11" identifier = (pointer_expression "*puVar11" * identifier)) ;) (if_statement "if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }" if (parenthesized_expression "(uVar6 < uVar7 + puVar13[2])" ( (binary_expression "uVar6 < uVar7 + puVar13[2]" identifier < (binary_expression "uVar7 + puVar13[2]" identifier + (subscript_expression "puVar13[2]" identifier [ number_literal ]))) )) (compound_statement "{\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }" { (if_statement "if (param_3 < 2) goto code_r0x00131269;" if (parenthesized_expression "(param_3 < 2)" ( (binary_expression "param_3 < 2" identifier < number_literal) )) (goto_statement "goto code_r0x00131269;" goto statement_identifier ;)) (expression_statement "uVar12 = dcgettext(0,"attempt to move .org backwards",5);" (assignment_expression "uVar12 = dcgettext(0,"attempt to move .org backwards",5)" identifier = (call_expression "dcgettext(0,"attempt to move .org backwards",5)" identifier (argument_list "(0,"attempt to move .org backwards",5)" ( number_literal , (string_literal ""attempt to move .org backwards"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);" (call_expression "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12)" identifier (argument_list "(puVar13[8],(int)puVar13[9],uVar12)" ( (subscript_expression "puVar13[8]" identifier [ number_literal ]) , (cast_expression "(int)puVar13[9]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "puVar13[9]" identifier [ number_literal ])) , identifier ))) ;) (expression_statement "*(undefined8 *)((long)puVar13 + 0x5c) = 2;" (assignment_expression "*(undefined8 *)((long)puVar13 + 0x5c) = 2" (pointer_expression "*(undefined8 *)((long)puVar13 + 0x5c)" * (cast_expression "(undefined8 *)((long)puVar13 + 0x5c)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5c)" ( (binary_expression "(long)puVar13 + 0x5c" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) = number_literal) ;) (expression_statement "puVar13[4] = 0;" (assignment_expression "puVar13[4] = 0" (subscript_expression "puVar13[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar13[2] = uVar15 - uVar20;" (assignment_expression "puVar13[2] = uVar15 - uVar20" (subscript_expression "puVar13[2]" identifier [ number_literal ]) = (binary_expression "uVar15 - uVar20" identifier - identifier)) ;) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (goto_statement "goto LAB_001311e7;" goto statement_identifier ;) })) (expression_statement "uVar6 = uVar6 - (uVar15 + lVar14);" (assignment_expression "uVar6 = uVar6 - (uVar15 + lVar14)" identifier = (binary_expression "uVar6 - (uVar15 + lVar14)" identifier - (parenthesized_expression "(uVar15 + lVar14)" ( (binary_expression "uVar15 + lVar14" identifier + identifier) )))) ;) (labeled_statement "LAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }" statement_identifier : (if_statement "if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }" if (parenthesized_expression "(uVar6 != 0)" ( (binary_expression "uVar6 != 0" identifier != number_literal) )) (compound_statement "{\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }" { (expression_statement "iVar4 = *(int *)((long)puVar13 + 0x5c);" (assignment_expression "iVar4 = *(int *)((long)puVar13 + 0x5c)" identifier = (pointer_expression "*(int *)((long)puVar13 + 0x5c)" * (cast_expression "(int *)((long)puVar13 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5c)" ( (binary_expression "(long)puVar13 + 0x5c" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (goto_statement "goto LAB_00131375;" goto statement_identifier ;) }))) (expression_statement "puVar13 = puVar11;" (assignment_expression "puVar13 = puVar11" identifier = identifier) ;) (expression_statement "uVar20 = *puVar11;" (assignment_expression "uVar20 = *puVar11" identifier = (pointer_expression "*puVar11" * identifier)) ;) (goto_statement "goto LAB_00131000;" goto statement_identifier ;)) (case_statement "case 8:" case number_literal :) (case_statement "case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }" case number_literal : (if_statement "if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }" if (parenthesized_expression "(uVar15 != 0)" ( (binary_expression "uVar15 != 0" identifier != number_literal) )) (compound_statement "{\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }" { (expression_statement "lVar8 = thunk_FUN_0012c290(uVar15);" (assignment_expression "lVar8 = thunk_FUN_0012c290(uVar15)" identifier = (call_expression "thunk_FUN_0012c290(uVar15)" identifier (argument_list "(uVar15)" ( identifier )))) ;) (expression_statement "lVar9 = FUN_0012af60(uVar15);" (assignment_expression "lVar9 = FUN_0012af60(uVar15)" identifier = (call_expression "FUN_0012af60(uVar15)" identifier (argument_list "(uVar15)" ( identifier )))) ;) (if_statement "if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }" if (parenthesized_expression "(((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0))" ( (binary_expression "((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)" (parenthesized_expression "((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0))" ( (binary_expression "(lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)" (parenthesized_expression "(lVar9 == 0x1949f0)" ( (binary_expression "lVar9 == 0x1949f0" identifier == number_literal) )) && (parenthesized_expression "(iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)" ( (comma_expression "iVar4 = FUN_0012ac00(uVar15), iVar4 == 0" (assignment_expression "iVar4 = FUN_0012ac00(uVar15)" identifier = (call_expression "FUN_0012ac00(uVar15)" identifier (argument_list "(uVar15)" ( identifier )))) , (binary_expression "iVar4 == 0" identifier == number_literal)) ))) )) && (parenthesized_expression "(iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)" ( (comma_expression "iVar4 = FUN_0012ac30(uVar15), iVar4 != 0" (assignment_expression "iVar4 = FUN_0012ac30(uVar15)" identifier = (call_expression "FUN_0012ac30(uVar15)" identifier (argument_list "(uVar15)" ( identifier )))) , (binary_expression "iVar4 != 0" identifier != number_literal)) ))) )) (compound_statement "{\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }" { (if_statement "if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }" if (parenthesized_expression "(lVar8 < 0)" ( (binary_expression "lVar8 < 0" identifier < number_literal) )) (compound_statement "{\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }" { (if_statement "if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }" if (parenthesized_expression "(param_3 < 2)" ( (binary_expression "param_3 < 2" identifier < number_literal) )) (compound_statement "{\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }" { (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "local_54 = 1;" (assignment_expression "local_54 = 1" identifier = number_literal) ;) }) (else_clause "else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }" else (compound_statement "{\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }" { (expression_statement "uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);" (assignment_expression "uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5)" identifier = (call_expression "dcgettext(0,".space, .nops or .fill with negative value, ignored",5)" identifier (argument_list "(0,".space, .nops or .fill with negative value, ignored",5)" ( number_literal , (string_literal "".space, .nops or .fill with negative value, ignored"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);" (call_expression "FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12)" identifier (argument_list "(puVar13[8],(int)puVar13[9],uVar12)" ( (subscript_expression "puVar13[8]" identifier [ number_literal ]) , (cast_expression "(int)puVar13[9]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "puVar13[9]" identifier [ number_literal ])) , identifier ))) ;) (expression_statement "puVar13[5] = 0;" (assignment_expression "puVar13[5] = 0" (subscript_expression "puVar13[5]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) }))) (goto_statement "goto LAB_001311e7;" goto statement_identifier ;) })) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;" (assignment_expression "uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8" identifier = (binary_expression "((puVar13[2] + uVar20) - *puVar11) + lVar8" (parenthesized_expression "((puVar13[2] + uVar20) - *puVar11)" ( (binary_expression "(puVar13[2] + uVar20) - *puVar11" (parenthesized_expression "(puVar13[2] + uVar20)" ( (binary_expression "puVar13[2] + uVar20" (subscript_expression "puVar13[2]" identifier [ number_literal ]) + identifier) )) - (pointer_expression "*puVar11" * identifier)) )) + identifier)) ;) (goto_statement "goto LAB_00131409;" goto statement_identifier ;) })) (expression_statement "uVar12 = dcgettext(0,".space specifies non-absolute value",5);" (assignment_expression "uVar12 = dcgettext(0,".space specifies non-absolute value",5)" identifier = (call_expression "dcgettext(0,".space specifies non-absolute value",5)" identifier (argument_list "(0,".space specifies non-absolute value",5)" ( number_literal , (string_literal "".space specifies non-absolute value"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);" (call_expression "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12)" identifier (argument_list "(puVar13[8],(int)puVar13[9],uVar12)" ( (subscript_expression "puVar13[8]" identifier [ number_literal ]) , (cast_expression "(int)puVar13[9]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "puVar13[9]" identifier [ number_literal ])) , identifier ))) ;) (expression_statement "puVar13[5] = 0;" (assignment_expression "puVar13[5] = 0" (subscript_expression "puVar13[5]" identifier [ number_literal ]) = number_literal) ;) }))) (case_statement "case 1:" case number_literal :) (case_statement "case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;" case number_literal : (labeled_statement "switchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];" statement_identifier : (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;)) (labeled_statement "LAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;" statement_identifier : (if_statement "if (puVar11 == (ulong *)0x0) goto LAB_001312f1;" if (parenthesized_expression "(puVar11 == (ulong *)0x0)" ( (binary_expression "puVar11 == (ulong *)0x0" identifier == (cast_expression "(ulong *)0x0" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_001312f1;" goto statement_identifier ;))) (labeled_statement "LAB_001311f0:\n      puVar13 = puVar11;" statement_identifier : (expression_statement "puVar13 = puVar11;" (assignment_expression "puVar13 = puVar11" identifier = identifier) ;)) (expression_statement "uVar20 = *puVar11;" (assignment_expression "uVar20 = *puVar11" identifier = (pointer_expression "*puVar11" * identifier)) ;) (goto_statement "goto LAB_00131000;" goto statement_identifier ;)) (case_statement "case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;" case number_literal : (expression_statement "uVar12 = FUN_0012b400(uVar15);" (assignment_expression "uVar12 = FUN_0012b400(uVar15)" identifier = (call_expression "FUN_0012b400(uVar15)" identifier (argument_list "(uVar15)" ( identifier )))) ;) (expression_statement "uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);" (assignment_expression "uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc])" identifier = (call_expression "FUN_00124c80(uVar12,(int)puVar13[0xc])" identifier (argument_list "(uVar12,(int)puVar13[0xc])" ( identifier , (cast_expression "(int)puVar13[0xc]" ( (type_descriptor "int" primitive_type) ) (subscript_expression "puVar13[0xc]" identifier [ number_literal ])) )))) ;) (expression_statement "uVar6 = (ulong)uVar5 - puVar13[4];" (assignment_expression "uVar6 = (ulong)uVar5 - puVar13[4]" identifier = (binary_expression "(ulong)uVar5 - puVar13[4]" (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier) - (subscript_expression "puVar13[4]" identifier [ number_literal ]))) ;) (expression_statement "puVar13[4] = (ulong)uVar5;" (assignment_expression "puVar13[4] = (ulong)uVar5" (subscript_expression "puVar13[4]" identifier [ number_literal ]) = (cast_expression "(ulong)uVar5" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (goto_statement "goto LAB_001312d8;" goto statement_identifier ;)) (case_statement "case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;" case number_literal : (expression_statement "iVar4 = FUN_00115810(puVar13);" (assignment_expression "iVar4 = FUN_00115810(puVar13)" identifier = (call_expression "FUN_00115810(puVar13)" identifier (argument_list "(puVar13)" ( identifier )))) ;) (expression_statement "uVar6 = (ulong)iVar4;" (assignment_expression "uVar6 = (ulong)iVar4" identifier = (cast_expression "(ulong)iVar4" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (labeled_statement "LAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];" statement_identifier : (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;)) (labeled_statement "joined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }" statement_identifier : (if_statement "if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }" if (parenthesized_expression "(uVar6 != 0)" ( (binary_expression "uVar6 != 0" identifier != number_literal) )) (compound_statement "{\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }" { (expression_statement "iVar4 = *(int *)((long)puVar13 + 0x5c);" (assignment_expression "iVar4 = *(int *)((long)puVar13 + 0x5c)" identifier = (pointer_expression "*(int *)((long)puVar13 + 0x5c)" * (cast_expression "(int *)((long)puVar13 + 0x5c)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar13 + 0x5c)" ( (binary_expression "(long)puVar13 + 0x5c" (cast_expression "(long)puVar13" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) ))))) ;) (labeled_statement "LAB_00131375:\n        lVar14 = lVar14 + uVar6;" statement_identifier : (expression_statement "lVar14 = lVar14 + uVar6;" (assignment_expression "lVar14 = lVar14 + uVar6" identifier = (binary_expression "lVar14 + uVar6" identifier + identifier)) ;)) (if_statement "if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }" if (parenthesized_expression "(iVar4 == 0xb)" ( (binary_expression "iVar4 == 0xb" identifier == number_literal) )) (compound_statement "{\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }" { (labeled_statement "LAB_001313e8:\n          uVar18 = uVar18 + 0x10;" statement_identifier : (expression_statement "uVar18 = uVar18 + 0x10;" (assignment_expression "uVar18 = uVar18 + 0x10" identifier = (binary_expression "uVar18 + 0x10" identifier + number_literal)) ;)) (expression_statement "bVar3 = true;" (assignment_expression "bVar3 = true" identifier = true) ;) }) (else_clause "else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }" else (compound_statement "{\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }" { (labeled_statement "LAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;" statement_identifier : (if_statement "if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;" if (parenthesized_expression "(((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0))" ( (binary_expression "((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)" (parenthesized_expression "((iVar4 == 2) && ((uVar18 & 0x10) != 0))" ( (binary_expression "(iVar4 == 2) && ((uVar18 & 0x10) != 0)" (parenthesized_expression "(iVar4 == 2)" ( (binary_expression "iVar4 == 2" identifier == number_literal) )) && (parenthesized_expression "((uVar18 & 0x10) != 0)" ( (binary_expression "(uVar18 & 0x10) != 0" (parenthesized_expression "(uVar18 & 0x10)" ( (binary_expression "uVar18 & 0x10" identifier & number_literal) )) != number_literal) ))) )) && (parenthesized_expression "(lVar14 == 0)" ( (binary_expression "lVar14 == 0" identifier == number_literal) ))) )) (goto_statement "goto LAB_001313e8;" goto statement_identifier ;))) (expression_statement "uVar18 = 0;" (assignment_expression "uVar18 = 0" identifier = number_literal) ;) (expression_statement "bVar3 = true;" (assignment_expression "bVar3 = true" identifier = true) ;) }))) (goto_statement "goto LAB_001311e7;" goto statement_identifier ;) }))) (if_statement "if (puVar11 != (ulong *)0x0) goto LAB_001311f0;" if (parenthesized_expression "(puVar11 != (ulong *)0x0)" ( (binary_expression "puVar11 != (ulong *)0x0" identifier != (cast_expression "(ulong *)0x0" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_001311f0;" goto statement_identifier ;)) (labeled_statement "LAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }" statement_identifier : (if_statement "if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }" if (parenthesized_expression "((lVar14 == 0) && ((uVar18 & 0x10) == 0))" ( (binary_expression "(lVar14 == 0) && ((uVar18 & 0x10) == 0)" (parenthesized_expression "(lVar14 == 0)" ( (binary_expression "lVar14 == 0" identifier == number_literal) )) && (parenthesized_expression "((uVar18 & 0x10) == 0)" ( (binary_expression "(uVar18 & 0x10) == 0" (parenthesized_expression "(uVar18 & 0x10)" ( (binary_expression "uVar18 & 0x10" identifier & number_literal) )) == number_literal) ))) )) (compound_statement "{\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }" { (expression_statement "uVar5 = uVar18 + 1;" (assignment_expression "uVar5 = uVar18 + 1" identifier = (binary_expression "uVar18 + 1" identifier + number_literal)) ;) (expression_statement "uVar17 = uVar18 & 0xfffffff0;" (assignment_expression "uVar17 = uVar18 & 0xfffffff0" identifier = (binary_expression "uVar18 & 0xfffffff0" identifier & number_literal)) ;) (expression_statement "uVar18 = 0;" (assignment_expression "uVar18 = 0" identifier = number_literal) ;) (if_statement "if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }" if (parenthesized_expression "(uVar17 != 0)" ( (binary_expression "uVar17 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar18 = uVar5;\n        }" { (expression_statement "uVar18 = uVar5;" (assignment_expression "uVar18 = uVar5" identifier = identifier) ;) })) }) (else_clause "else {\n        uVar18 = 0;\n      }" else (compound_statement "{\n        uVar18 = 0;\n      }" { (expression_statement "uVar18 = 0;" (assignment_expression "uVar18 = 0" identifier = number_literal) ;) })))) (if_statement "if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }" if (parenthesized_expression "(!bVar3)" ( (unary_expression "!bVar3" ! identifier) )) (compound_statement "{\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }" { (do_statement "do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);" do (compound_statement "{\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        }" { (if_statement "if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }" if (parenthesized_expression "(param_1[1] != *param_1)" ( (binary_expression "param_1[1] != *param_1" (subscript_expression "param_1[1]" identifier [ number_literal ]) != (pointer_expression "*param_1" * identifier)) )) (compound_statement "{\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }" { (expression_statement "param_1[1] = *param_1;" (assignment_expression "param_1[1] = *param_1" (subscript_expression "param_1[1]" identifier [ number_literal ]) = (pointer_expression "*param_1" * identifier)) ;) (expression_statement "local_54 = 1;" (assignment_expression "local_54 = 1" identifier = number_literal) ;) })) (expression_statement "param_1 = (ulong *)param_1[7];" (assignment_expression "param_1 = (ulong *)param_1[7]" identifier = (cast_expression "(ulong *)param_1[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "param_1[7]" identifier [ number_literal ]))) ;) }) while (parenthesized_expression "(param_1 != (ulong *)0x0)" ( (binary_expression "param_1 != (ulong *)0x0" identifier != (cast_expression "(ulong *)0x0" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) ;) (return_statement "return local_54;" return identifier ;) })) (expression_statement "local_48 = local_48 - 1;" (assignment_expression "local_48 = local_48 - 1" identifier = (binary_expression "local_48 - 1" identifier - number_literal)) ;) (if_statement "if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }" if (parenthesized_expression "(local_48 == 0)" ( (binary_expression "local_48 == 0" identifier == number_literal) )) (compound_statement "{\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }" { (expression_statement "uVar12 = *param_2;" (assignment_expression "uVar12 = *param_2" identifier = (pointer_expression "*param_2" * identifier)) ;) (expression_statement "uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);" (assignment_expression "uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5)" identifier = (call_expression "dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5)" identifier (argument_list "(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5)" ( number_literal , (string_literal ""Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_0011f870(uVar10,uVar12);" (call_expression "FUN_0011f870(uVar10,uVar12)" identifier (argument_list "(uVar10,uVar12)" ( identifier , identifier ))) ;) })) (break_statement "break;" break ;)) (case_statement "case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;" case number_literal : (expression_statement "iVar4 = FUN_00111570(puVar13);" (assignment_expression "iVar4 = FUN_00111570(puVar13)" identifier = (call_expression "FUN_00111570(puVar13)" identifier (argument_list "(puVar13)" ( identifier )))) ;) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" identifier = (cast_expression "(ulong *)puVar13[7]" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar13[7]" identifier [ number_literal ]))) ;) (expression_statement "uVar6 = (ulong)iVar4;" (assignment_expression "uVar6 = (ulong)iVar4" identifier = (cast_expression "(ulong)iVar4" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (goto_statement "goto joined_r0x00131369;" goto statement_identifier ;)) })) }) while (parenthesized_expression "( true )" ( true )) ;) (labeled_statement "code_r0x00131269:\n  local_54 = 1;" statement_identifier : (expression_statement "local_54 = 1;" (assignment_expression "local_54 = 1" identifier = number_literal) ;)) (expression_statement "puVar13 = puVar11;" (assignment_expression "puVar13 = puVar11" identifier = identifier) ;) (expression_statement "uVar20 = uVar15;" (assignment_expression "uVar20 = uVar15" identifier = identifier) ;) (goto_statement "goto LAB_00131000;" goto statement_identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE IDENT) ))) (compound_statement { (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier short) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (return_statement return LIT ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier short) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) & LIT)) ;) (switch_statement switch (parenthesized_expression ( IDENT )) (compound_statement { (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement default : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence string_content escape_sequence escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , (string_literal " string_content ") ))) ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (pointer_expression * IDENT) * (pointer_expression * IDENT)) + IDENT)) ;) (break_statement break ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (binary_expression LIT << (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (unary_expression ~ IDENT) + IDENT) & IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == LIT) )) || (parenthesized_expression ( (binary_expression IDENT <= (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) , (comma_expression (assignment_expression IDENT = IDENT) , (binary_expression (binary_expression IDENT % IDENT) != LIT))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , (string_literal " string_content ") , IDENT , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) , IDENT , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (binary_expression IDENT % (subscript_expression IDENT [ LIT ])))) ;) }))) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (break_statement break ;)) (case_statement case LIT : (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( ))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT)) ;)) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT)) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + IDENT)) ;)) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (binary_expression IDENT * IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT * IDENT)) ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = BOOL) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;)) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) ))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) = (binary_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)) ) IDENT) + LIT) )))) & LIT) | (binary_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)) ) IDENT) + LIT) )))) & LIT) ^ LIT))) ;) (switch_statement switch (parenthesized_expression ( IDENT )) (compound_statement { (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT :) (case_statement default : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence string_content escape_sequence escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , (string_literal " string_content ") ))) ;)) (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (binary_expression LIT << (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (unary_expression ~ IDENT)) & IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (binary_expression IDENT + (unary_expression ~ IDENT)) & IDENT) )) - IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) + IDENT)) ;) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT < (binary_expression IDENT - IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (goto_statement goto statement_identifier ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT - IDENT) )) + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - IDENT)) ;) })) }))))) (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT)) )) (goto_statement goto statement_identifier ;)) (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 = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (subscript_expression IDENT [ LIT ]) + (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) | LIT)) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) & (unary_expression ~ (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))))) ;) (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 (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) < (binary_expression IDENT - (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))))) )) (compound_statement { (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) ))) , (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + (subscript_expression IDENT [ LIT ])) + LIT) ))) , (subscript_expression IDENT [ LIT ]) ))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + IDENT) + (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression LIT << (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) & LIT) ))) )) / (cast_expression ( (type_descriptor (sized_type_specifier long)) ) (subscript_expression IDENT [ LIT ])))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression LIT << (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) & LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (binary_expression IDENT * (subscript_expression IDENT [ LIT ])) - IDENT) != LIT) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression IDENT - (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) = (binary_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)) ) IDENT) + LIT) )))) & LIT) | (binary_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)) ) IDENT) + LIT) )))) & LIT) ^ LIT))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (goto_statement goto statement_identifier ;)) (case_statement case LIT : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != 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 )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < (binary_expression IDENT + (subscript_expression IDENT [ LIT ]))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) , IDENT ))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - (parenthesized_expression ( (binary_expression IDENT + IDENT) )))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) ))))) ;) (goto_statement goto statement_identifier ;) }))) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (goto_statement goto statement_identifier ;)) (case_statement case LIT :) (case_statement case LIT : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) , (binary_expression IDENT == LIT)) ))) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) , (binary_expression IDENT != LIT)) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) }) (else_clause else (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 ( (subscript_expression IDENT [ LIT ]) , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) , IDENT ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) }))) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) + IDENT) )) - (pointer_expression * IDENT)) )) + IDENT)) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (subscript_expression IDENT [ LIT ]) , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) , IDENT ))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) }))) (case_statement case LIT :) (case_statement case LIT : (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (goto_statement goto statement_identifier ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) (subscript_expression IDENT [ LIT ])) )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) - (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (goto_statement goto statement_identifier ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = BOOL) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) ))) )) && (parenthesized_expression ( (binary_expression IDENT == LIT) ))) )) (goto_statement goto statement_identifier ;))) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = BOOL) ;) }))) (goto_statement goto statement_identifier ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (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 & LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) })))) (if_statement if (parenthesized_expression ( (unary_expression ! IDENT) )) (compound_statement { (do_statement do (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != (pointer_expression * IDENT)) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) })) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) ;) (return_statement return IDENT ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) })) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (goto_statement goto statement_identifier ;)) })) }) while (parenthesized_expression ( BOOL )) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = LIT) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (goto_statement goto statement_identifier ;) })))
(function_definition "undefined4 FUN_00130f10(ulong *param_1,undefined8 *param_2,int param_3)\n\n{\n  ulong *puVar1;\n  undefined4 uVar2;\n  bool bVar3;\n  int iVar4;\n  uint uVar5;\n  ulong uVar6;\n  ulong uVar7;\n  long lVar8;\n  long lVar9;\n  undefined8 uVar10;\n  ulong *puVar11;\n  undefined8 uVar12;\n  ulong *puVar13;\n  long lVar14;\n  ulong uVar15;\n  ulong uVar16;\n  uint uVar17;\n  uint uVar18;\n  short sVar19;\n  ulong uVar20;\n  undefined4 local_54;\n  ulong local_48;\n  \n  FUN_00129130(param_2,0);\n  if (param_1 == (ulong *)0x0) {\n    return 0;\n  }\n  sVar19 = 0;\n  uVar20 = 0;\n  puVar13 = param_1;\n  lVar14 = 0;\n  do {\n    lVar8 = lVar14;\n    uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);\n    *puVar13 = uVar20;\n    *(short *)(puVar13 + 0xb) = sVar19;\n    uVar20 = puVar13[2] + uVar20;\n    *(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;\n    switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }\n    lVar14 = lVar8 + 1;\n  } while (puVar13 != (ulong *)0x0);\n  local_48 = lVar8 + 1;\n  local_54 = 0;\n  if (local_48 <= local_48 * local_48) {\n    local_48 = local_48 * local_48;\n  }\n  uVar18 = 0;\n  do {\n    if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }\n    bVar3 = false;\n    lVar14 = 0;\n    puVar13 = param_1;\n    uVar20 = *param_1;\nLAB_00131000:\n    uVar7 = lVar14 + uVar20;\n    uVar15 = puVar13[5];\n    *puVar13 = uVar7;\n    uVar6 = puVar13[4];\n    iVar4 = *(int *)((long)puVar13 + 0x5c);\n    *(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;\n    switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }\n  } while( true );\ncode_r0x00131269:\n  local_54 = 1;\n  puVar13 = puVar11;\n  uVar20 = uVar15;\n  goto LAB_00131000;\n}" (type_identifier "undefined4") (function_declarator "FUN_00130f10(ulong *param_1,undefined8 *param_2,int param_3)" (identifier "FUN_00130f10") (parameter_list "(ulong *param_1,undefined8 *param_2,int param_3)" (( "(") (parameter_declaration "ulong *param_1" (type_identifier "ulong") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "undefined8 *param_2" (type_identifier "undefined8") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) (, ",") (parameter_declaration "int param_3" (primitive_type "int") (identifier "param_3")) () ")"))) (compound_statement "{\n  ulong *puVar1;\n  undefined4 uVar2;\n  bool bVar3;\n  int iVar4;\n  uint uVar5;\n  ulong uVar6;\n  ulong uVar7;\n  long lVar8;\n  long lVar9;\n  undefined8 uVar10;\n  ulong *puVar11;\n  undefined8 uVar12;\n  ulong *puVar13;\n  long lVar14;\n  ulong uVar15;\n  ulong uVar16;\n  uint uVar17;\n  uint uVar18;\n  short sVar19;\n  ulong uVar20;\n  undefined4 local_54;\n  ulong local_48;\n  \n  FUN_00129130(param_2,0);\n  if (param_1 == (ulong *)0x0) {\n    return 0;\n  }\n  sVar19 = 0;\n  uVar20 = 0;\n  puVar13 = param_1;\n  lVar14 = 0;\n  do {\n    lVar8 = lVar14;\n    uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);\n    *puVar13 = uVar20;\n    *(short *)(puVar13 + 0xb) = sVar19;\n    uVar20 = puVar13[2] + uVar20;\n    *(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;\n    switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }\n    lVar14 = lVar8 + 1;\n  } while (puVar13 != (ulong *)0x0);\n  local_48 = lVar8 + 1;\n  local_54 = 0;\n  if (local_48 <= local_48 * local_48) {\n    local_48 = local_48 * local_48;\n  }\n  uVar18 = 0;\n  do {\n    if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }\n    bVar3 = false;\n    lVar14 = 0;\n    puVar13 = param_1;\n    uVar20 = *param_1;\nLAB_00131000:\n    uVar7 = lVar14 + uVar20;\n    uVar15 = puVar13[5];\n    *puVar13 = uVar7;\n    uVar6 = puVar13[4];\n    iVar4 = *(int *)((long)puVar13 + 0x5c);\n    *(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;\n    switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }\n  } while( true );\ncode_r0x00131269:\n  local_54 = 1;\n  puVar13 = puVar11;\n  uVar20 = uVar15;\n  goto LAB_00131000;\n}" ({ "{") (declaration "ulong *puVar1;" (type_identifier "ulong") (pointer_declarator "*puVar1" (* "*") (identifier "puVar1")) (; ";")) (declaration "undefined4 uVar2;" (type_identifier "undefined4") (identifier "uVar2") (; ";")) (declaration "bool bVar3;" (primitive_type "bool") (identifier "bVar3") (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (declaration "uint uVar5;" (type_identifier "uint") (identifier "uVar5") (; ";")) (declaration "ulong uVar6;" (type_identifier "ulong") (identifier "uVar6") (; ";")) (declaration "ulong uVar7;" (type_identifier "ulong") (identifier "uVar7") (; ";")) (declaration "long lVar8;" (sized_type_specifier "long" (long "long")) (identifier "lVar8") (; ";")) (declaration "long lVar9;" (sized_type_specifier "long" (long "long")) (identifier "lVar9") (; ";")) (declaration "undefined8 uVar10;" (type_identifier "undefined8") (identifier "uVar10") (; ";")) (declaration "ulong *puVar11;" (type_identifier "ulong") (pointer_declarator "*puVar11" (* "*") (identifier "puVar11")) (; ";")) (declaration "undefined8 uVar12;" (type_identifier "undefined8") (identifier "uVar12") (; ";")) (declaration "ulong *puVar13;" (type_identifier "ulong") (pointer_declarator "*puVar13" (* "*") (identifier "puVar13")) (; ";")) (declaration "long lVar14;" (sized_type_specifier "long" (long "long")) (identifier "lVar14") (; ";")) (declaration "ulong uVar15;" (type_identifier "ulong") (identifier "uVar15") (; ";")) (declaration "ulong uVar16;" (type_identifier "ulong") (identifier "uVar16") (; ";")) (declaration "uint uVar17;" (type_identifier "uint") (identifier "uVar17") (; ";")) (declaration "uint uVar18;" (type_identifier "uint") (identifier "uVar18") (; ";")) (declaration "short sVar19;" (sized_type_specifier "short" (short "short")) (identifier "sVar19") (; ";")) (declaration "ulong uVar20;" (type_identifier "ulong") (identifier "uVar20") (; ";")) (declaration "undefined4 local_54;" (type_identifier "undefined4") (identifier "local_54") (; ";")) (declaration "ulong local_48;" (type_identifier "ulong") (identifier "local_48") (; ";")) (expression_statement "FUN_00129130(param_2,0);" (call_expression "FUN_00129130(param_2,0)" (identifier "FUN_00129130") (argument_list "(param_2,0)" (( "(") (identifier "param_2") (, ",") (number_literal "0") () ")"))) (; ";")) (if_statement "if (param_1 == (ulong *)0x0) {\n    return 0;\n  }" (if "if") (parenthesized_expression "(param_1 == (ulong *)0x0)" (( "(") (binary_expression "param_1 == (ulong *)0x0" (identifier "param_1") (== "==") (cast_expression "(ulong *)0x0" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n    return 0;\n  }" ({ "{") (return_statement "return 0;" (return "return") (number_literal "0") (; ";")) (} "}"))) (expression_statement "sVar19 = 0;" (assignment_expression "sVar19 = 0" (identifier "sVar19") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar20 = 0;" (assignment_expression "uVar20 = 0" (identifier "uVar20") (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar13 = param_1;" (assignment_expression "puVar13 = param_1" (identifier "puVar13") (= "=") (identifier "param_1")) (; ";")) (expression_statement "lVar14 = 0;" (assignment_expression "lVar14 = 0" (identifier "lVar14") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n    lVar8 = lVar14;\n    uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);\n    *puVar13 = uVar20;\n    *(short *)(puVar13 + 0xb) = sVar19;\n    uVar20 = puVar13[2] + uVar20;\n    *(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;\n    switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }\n    lVar14 = lVar8 + 1;\n  } while (puVar13 != (ulong *)0x0);" (do "do") (compound_statement "{\n    lVar8 = lVar14;\n    uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);\n    *puVar13 = uVar20;\n    *(short *)(puVar13 + 0xb) = sVar19;\n    uVar20 = puVar13[2] + uVar20;\n    *(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;\n    switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }\n    lVar14 = lVar8 + 1;\n  }" ({ "{") (expression_statement "lVar8 = lVar14;" (assignment_expression "lVar8 = lVar14" (identifier "lVar8") (= "=") (identifier "lVar14")) (; ";")) (expression_statement "uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);" (assignment_expression "uVar2 = *(undefined4 *)((long)puVar13 + 0x5c)" (identifier "uVar2") (= "=") (pointer_expression "*(undefined4 *)((long)puVar13 + 0x5c)" (* "*") (cast_expression "(undefined4 *)((long)puVar13 + 0x5c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar13 + 0x5c)" (( "(") (binary_expression "(long)puVar13 + 0x5c" (cast_expression "(long)puVar13" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar13")) (+ "+") (number_literal "0x5c")) () ")"))))) (; ";")) (expression_statement "*puVar13 = uVar20;" (assignment_expression "*puVar13 = uVar20" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (= "=") (identifier "uVar20")) (; ";")) (expression_statement "*(short *)(puVar13 + 0xb) = sVar19;" (assignment_expression "*(short *)(puVar13 + 0xb) = sVar19" (pointer_expression "*(short *)(puVar13 + 0xb)" (* "*") (cast_expression "(short *)(puVar13 + 0xb)" (( "(") (type_descriptor "short *" (sized_type_specifier "short" (short "short")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar13 + 0xb)" (( "(") (binary_expression "puVar13 + 0xb" (identifier "puVar13") (+ "+") (number_literal "0xb")) () ")")))) (= "=") (identifier "sVar19")) (; ";")) (expression_statement "uVar20 = puVar13[2] + uVar20;" (assignment_expression "uVar20 = puVar13[2] + uVar20" (identifier "uVar20") (= "=") (binary_expression "puVar13[2] + uVar20" (subscript_expression "puVar13[2]" (identifier "puVar13") ([ "[") (number_literal "2") (] "]")) (+ "+") (identifier "uVar20"))) (; ";")) (expression_statement "*(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;" (assignment_expression "*(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe" (pointer_expression "*(byte *)((long)puVar13 + 0x5a)" (* "*") (cast_expression "(byte *)((long)puVar13 + 0x5a)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar13 + 0x5a)" (( "(") (binary_expression "(long)puVar13 + 0x5a" (cast_expression "(long)puVar13" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar13")) (+ "+") (number_literal "0x5a")) () ")")))) (= "=") (binary_expression "*(byte *)((long)puVar13 + 0x5a) & 0xfe" (pointer_expression "*(byte *)((long)puVar13 + 0x5a)" (* "*") (cast_expression "(byte *)((long)puVar13 + 0x5a)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar13 + 0x5a)" (( "(") (binary_expression "(long)puVar13 + 0x5a" (cast_expression "(long)puVar13" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar13")) (+ "+") (number_literal "0x5a")) () ")")))) (& "&") (number_literal "0xfe"))) (; ";")) (switch_statement "switch(uVar2) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }" (switch "switch") (parenthesized_expression "(uVar2)" (( "(") (identifier "uVar2") () ")")) (compound_statement "{\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");\n    case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }\n    case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;\n    case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;\n    case 8:\n    case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;\n    case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;\n    case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;\n    case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n    }" ({ "{") (case_statement "case 0:" (case "case") (number_literal "0") (: ":")) (case_statement "case 6:" (case "case") (number_literal "6") (: ":")) (case_statement "case 10:" (case "case") (number_literal "10") (: ":")) (case_statement "default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");" (default "default") (: ":") (expression_statement "uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" (identifier "dcgettext") (argument_list "(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Case value %ld unexpected at line %d of file \"%s\"\n"" (" """) (string_content "Case value %ld unexpected at line %d of file ") (escape_sequence "\"") (string_content "%s") (escape_sequence "\"") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");" (call_expression "FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c")" (identifier "FUN_0011f870") (argument_list "(uVar12,uVar2,0xaa0,"../../gas/write.c")" (( "(") (identifier "uVar12") (, ",") (identifier "uVar2") (, ",") (number_literal "0xaa0") (, ",") (string_literal ""../../gas/write.c"" (" """) (string_content "../../gas/write.c") (" """)) () ")"))) (; ";"))) (case_statement "case 1:\n      puVar11 = puVar13 + 4;\n      puVar1 = puVar13 + 3;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = *puVar11 * *puVar1 + uVar20;\n      break;" (case "case") (number_literal "1") (: ":") (expression_statement "puVar11 = puVar13 + 4;" (assignment_expression "puVar11 = puVar13 + 4" (identifier "puVar11") (= "=") (binary_expression "puVar13 + 4" (identifier "puVar13") (+ "+") (number_literal "4"))) (; ";")) (expression_statement "puVar1 = puVar13 + 3;" (assignment_expression "puVar1 = puVar13 + 3" (identifier "puVar1") (= "=") (binary_expression "puVar13 + 3" (identifier "puVar13") (+ "+") (number_literal "3"))) (; ";")) (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" (identifier "puVar13") (= "=") (cast_expression "(ulong *)puVar13[7]" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]")))) (; ";")) (expression_statement "uVar20 = *puVar11 * *puVar1 + uVar20;" (assignment_expression "uVar20 = *puVar11 * *puVar1 + uVar20" (identifier "uVar20") (= "=") (binary_expression "*puVar11 * *puVar1 + uVar20" (binary_expression "*puVar11 * *puVar1" (pointer_expression "*puVar11" (* "*") (identifier "puVar11")) (* "*") (pointer_expression "*puVar1" (* "*") (identifier "puVar1"))) (+ "+") (identifier "uVar20"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 2:" (case "case") (number_literal "2") (: ":")) (case_statement "case 3:" (case "case") (number_literal "3") (: ":")) (case_statement "case 4:\n      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);\n      uVar6 = ~uVar6 + uVar20 & uVar6;\n      uVar7 = uVar6 - uVar20;\n      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }" (case "case") (number_literal "4") (: ":") (expression_statement "uVar6 = -1L << ((byte)puVar13[4] & 0x3f);" (assignment_expression "uVar6 = -1L << ((byte)puVar13[4] & 0x3f)" (identifier "uVar6") (= "=") (binary_expression "-1L << ((byte)puVar13[4] & 0x3f)" (number_literal "-1L") (<< "<<") (parenthesized_expression "((byte)puVar13[4] & 0x3f)" (( "(") (binary_expression "(byte)puVar13[4] & 0x3f" (cast_expression "(byte)puVar13[4]" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (subscript_expression "puVar13[4]" (identifier "puVar13") ([ "[") (number_literal "4") (] "]"))) (& "&") (number_literal "0x3f")) () ")")))) (; ";")) (expression_statement "uVar6 = ~uVar6 + uVar20 & uVar6;" (assignment_expression "uVar6 = ~uVar6 + uVar20 & uVar6" (identifier "uVar6") (= "=") (binary_expression "~uVar6 + uVar20 & uVar6" (binary_expression "~uVar6 + uVar20" (unary_expression "~uVar6" (~ "~") (identifier "uVar6")) (+ "+") (identifier "uVar20")) (& "&") (identifier "uVar6"))) (; ";")) (expression_statement "uVar7 = uVar6 - uVar20;" (assignment_expression "uVar7 = uVar6 - uVar20" (identifier "uVar7") (= "=") (binary_expression "uVar6 - uVar20" (identifier "uVar6") (- "-") (identifier "uVar20"))) (; ";")) (if_statement "if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }" (if "if") (parenthesized_expression "((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0))" (( "(") (binary_expression "(((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&\n         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)" (parenthesized_expression "(((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc]))" (( "(") (binary_expression "((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])" (parenthesized_expression "((uint)puVar13[0xc] == 0)" (( "(") (binary_expression "(uint)puVar13[0xc] == 0" (cast_expression "(uint)puVar13[0xc]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "puVar13[0xc]" (identifier "puVar13") ([ "[") (number_literal "0xc") (] "]"))) (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(uVar7 <= (uint)puVar13[0xc])" (( "(") (binary_expression "uVar7 <= (uint)puVar13[0xc]" (identifier "uVar7") (<= "<=") (cast_expression "(uint)puVar13[0xc]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "puVar13[0xc]" (identifier "puVar13") ([ "[") (number_literal "0xc") (] "]")))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)" (( "(") (comma_expression "uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0" (assignment_expression "uVar15 = puVar13[3]" (identifier "uVar15") (= "=") (subscript_expression "puVar13[3]" (identifier "puVar13") ([ "[") (number_literal "3") (] "]"))) (, ",") (comma_expression "uVar20 = uVar6, uVar7 % uVar15 != 0" (assignment_expression "uVar20 = uVar6" (identifier "uVar20") (= "=") (identifier "uVar6")) (, ",") (binary_expression "uVar7 % uVar15 != 0" (binary_expression "uVar7 % uVar15" (identifier "uVar7") (% "%") (identifier "uVar15")) (!= "!=") (number_literal "0")))) () ")"))) () ")")) (compound_statement "{\n        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);\n        uVar20 = uVar6 - uVar7 % puVar13[3];\n      }" ({ "{") (expression_statement "uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);" (assignment_expression "uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5)" (identifier "uVar12") (= "=") (call_expression "dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5)" (identifier "dcngettext") (argument_list "(0,"alignment padding (%lu byte) not a multiple of %ld",\n                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5)" (( "(") (number_literal "0") (, ",") (string_literal ""alignment padding (%lu byte) not a multiple of %ld"" (" """) (string_content "alignment padding (%lu byte) not a multiple of %ld") (" """)) (, ",") (string_literal ""alignment padding (%lu bytes) not a multiple of %ld"" (" """) (string_content "alignment padding (%lu bytes) not a multiple of %ld") (" """)) (, ",") (identifier "uVar7") (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);" (call_expression "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15)" (identifier "FUN_0011f7a0") (argument_list "(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15)" (( "(") (subscript_expression "puVar13[8]" (identifier "puVar13") ([ "[") (number_literal "8") (] "]")) (, ",") (cast_expression "(int)puVar13[9]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "puVar13[9]" (identifier "puVar13") ([ "[") (number_literal "9") (] "]"))) (, ",") (identifier "uVar12") (, ",") (identifier "uVar7") (, ",") (identifier "uVar15") () ")"))) (; ";")) (expression_statement "uVar20 = uVar6 - uVar7 % puVar13[3];" (assignment_expression "uVar20 = uVar6 - uVar7 % puVar13[3]" (identifier "uVar20") (= "=") (binary_expression "uVar6 - uVar7 % puVar13[3]" (identifier "uVar6") (- "-") (binary_expression "uVar7 % puVar13[3]" (identifier "uVar7") (% "%") (subscript_expression "puVar13[3]" (identifier "puVar13") ([ "[") (number_literal "3") (] "]"))))) (; ";")) (} "}")))) (case_statement "case 5:\n      puVar13 = (ulong *)puVar13[7];\n      sVar19 = sVar19 + 1;\n      break;" (case "case") (number_literal "5") (: ":") (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" (identifier "puVar13") (= "=") (cast_expression "(ulong *)puVar13[7]" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]")))) (; ";")) (expression_statement "sVar19 = sVar19 + 1;" (assignment_expression "sVar19 = sVar19 + 1" (identifier "sVar19") (= "=") (binary_expression "sVar19 + 1" (identifier "sVar19") (+ "+") (number_literal "1"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 7:\n      if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }\n      iVar4 = FUN_00136870(puVar13,param_2);\n      uVar20 = (long)iVar4 + uVar20;" (case "case") (number_literal "7") (: ":") (if_statement "if (puVar13[5] != 0) {\n        FUN_0012b400();\n      }" (if "if") (parenthesized_expression "(puVar13[5] != 0)" (( "(") (binary_expression "puVar13[5] != 0" (subscript_expression "puVar13[5]" (identifier "puVar13") ([ "[") (number_literal "5") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        FUN_0012b400();\n      }" ({ "{") (expression_statement "FUN_0012b400();" (call_expression "FUN_0012b400()" (identifier "FUN_0012b400") (argument_list "()" (( "(") () ")"))) (; ";")) (} "}"))) (expression_statement "iVar4 = FUN_00136870(puVar13,param_2);" (assignment_expression "iVar4 = FUN_00136870(puVar13,param_2)" (identifier "iVar4") (= "=") (call_expression "FUN_00136870(puVar13,param_2)" (identifier "FUN_00136870") (argument_list "(puVar13,param_2)" (( "(") (identifier "puVar13") (, ",") (identifier "param_2") () ")")))) (; ";")) (expression_statement "uVar20 = (long)iVar4 + uVar20;" (assignment_expression "uVar20 = (long)iVar4 + uVar20" (identifier "uVar20") (= "=") (binary_expression "(long)iVar4 + uVar20" (cast_expression "(long)iVar4" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "iVar4")) (+ "+") (identifier "uVar20"))) (; ";"))) (case_statement "case 8:" (case "case") (number_literal "8") (: ":")) (case_statement "case 9:\n      puVar13 = (ulong *)puVar13[7];\n      break;" (case "case") (number_literal "9") (: ":") (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" (identifier "puVar13") (= "=") (cast_expression "(ulong *)puVar13[7]" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]")))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0xb:\n      puVar13[4] = 1;\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = uVar20 + 1;\n      break;" (case "case") (number_literal "0xb") (: ":") (expression_statement "puVar13[4] = 1;" (assignment_expression "puVar13[4] = 1" (subscript_expression "puVar13[4]" (identifier "puVar13") ([ "[") (number_literal "4") (] "]")) (= "=") (number_literal "1")) (; ";")) (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" (identifier "puVar13") (= "=") (cast_expression "(ulong *)puVar13[7]" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]")))) (; ";")) (expression_statement "uVar20 = uVar20 + 1;" (assignment_expression "uVar20 = uVar20 + 1" (identifier "uVar20") (= "=") (binary_expression "uVar20 + 1" (identifier "uVar20") (+ "+") (number_literal "1"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0xc:\n      iVar4 = FUN_00115780(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;\n      break;" (case "case") (number_literal "0xc") (: ":") (expression_statement "iVar4 = FUN_00115780(puVar13);" (assignment_expression "iVar4 = FUN_00115780(puVar13)" (identifier "iVar4") (= "=") (call_expression "FUN_00115780(puVar13)" (identifier "FUN_00115780") (argument_list "(puVar13)" (( "(") (identifier "puVar13") () ")")))) (; ";")) (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" (identifier "puVar13") (= "=") (cast_expression "(ulong *)puVar13[7]" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]")))) (; ";")) (expression_statement "uVar20 = (long)iVar4 + uVar20;" (assignment_expression "uVar20 = (long)iVar4 + uVar20" (identifier "uVar20") (= "=") (binary_expression "(long)iVar4 + uVar20" (cast_expression "(long)iVar4" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "iVar4")) (+ "+") (identifier "uVar20"))) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0xd:\n      iVar4 = FUN_00111530(puVar13);\n      puVar13 = (ulong *)puVar13[7];\n      uVar20 = (long)iVar4 + uVar20;" (case "case") (number_literal "0xd") (: ":") (expression_statement "iVar4 = FUN_00111530(puVar13);" (assignment_expression "iVar4 = FUN_00111530(puVar13)" (identifier "iVar4") (= "=") (call_expression "FUN_00111530(puVar13)" (identifier "FUN_00111530") (argument_list "(puVar13)" (( "(") (identifier "puVar13") () ")")))) (; ";")) (expression_statement "puVar13 = (ulong *)puVar13[7];" (assignment_expression "puVar13 = (ulong *)puVar13[7]" (identifier "puVar13") (= "=") (cast_expression "(ulong *)puVar13[7]" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]")))) (; ";")) (expression_statement "uVar20 = (long)iVar4 + uVar20;" (assignment_expression "uVar20 = (long)iVar4 + uVar20" (identifier "uVar20") (= "=") (binary_expression "(long)iVar4 + uVar20" (cast_expression "(long)iVar4" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "iVar4")) (+ "+") (identifier "uVar20"))) (; ";"))) (} "}"))) (expression_statement "lVar14 = lVar8 + 1;" (assignment_expression "lVar14 = lVar8 + 1" (identifier "lVar14") (= "=") (binary_expression "lVar8 + 1" (identifier "lVar8") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(puVar13 != (ulong *)0x0)" (( "(") (binary_expression "puVar13 != (ulong *)0x0" (identifier "puVar13") (!= "!=") (cast_expression "(ulong *)0x0" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (; ";")) (expression_statement "local_48 = lVar8 + 1;" (assignment_expression "local_48 = lVar8 + 1" (identifier "local_48") (= "=") (binary_expression "lVar8 + 1" (identifier "lVar8") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "local_54 = 0;" (assignment_expression "local_54 = 0" (identifier "local_54") (= "=") (number_literal "0")) (; ";")) (if_statement "if (local_48 <= local_48 * local_48) {\n    local_48 = local_48 * local_48;\n  }" (if "if") (parenthesized_expression "(local_48 <= local_48 * local_48)" (( "(") (binary_expression "local_48 <= local_48 * local_48" (identifier "local_48") (<= "<=") (binary_expression "local_48 * local_48" (identifier "local_48") (* "*") (identifier "local_48"))) () ")")) (compound_statement "{\n    local_48 = local_48 * local_48;\n  }" ({ "{") (expression_statement "local_48 = local_48 * local_48;" (assignment_expression "local_48 = local_48 * local_48" (identifier "local_48") (= "=") (binary_expression "local_48 * local_48" (identifier "local_48") (* "*") (identifier "local_48"))) (; ";")) (} "}"))) (expression_statement "uVar18 = 0;" (assignment_expression "uVar18 = 0" (identifier "uVar18") (= "=") (number_literal "0")) (; ";")) (do_statement "do {\n    if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }\n    bVar3 = false;\n    lVar14 = 0;\n    puVar13 = param_1;\n    uVar20 = *param_1;\nLAB_00131000:\n    uVar7 = lVar14 + uVar20;\n    uVar15 = puVar13[5];\n    *puVar13 = uVar7;\n    uVar6 = puVar13[4];\n    iVar4 = *(int *)((long)puVar13 + 0x5c);\n    *(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;\n    switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }\n  } while( true );" (do "do") (compound_statement "{\n    if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }\n    bVar3 = false;\n    lVar14 = 0;\n    puVar13 = param_1;\n    uVar20 = *param_1;\nLAB_00131000:\n    uVar7 = lVar14 + uVar20;\n    uVar15 = puVar13[5];\n    *puVar13 = uVar7;\n    uVar6 = puVar13[4];\n    iVar4 = *(int *)((long)puVar13 + 0x5c);\n    *(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;\n    switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }\n  }" ({ "{") (if_statement "if (param_1 == (ulong *)0x0) {\n      return local_54;\n    }" (if "if") (parenthesized_expression "(param_1 == (ulong *)0x0)" (( "(") (binary_expression "param_1 == (ulong *)0x0" (identifier "param_1") (== "==") (cast_expression "(ulong *)0x0" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n      return local_54;\n    }" ({ "{") (return_statement "return local_54;" (return "return") (identifier "local_54") (; ";")) (} "}"))) (expression_statement "bVar3 = false;" (assignment_expression "bVar3 = false" (identifier "bVar3") (= "=") (false "false")) (; ";")) (expression_statement "lVar14 = 0;" (assignment_expression "lVar14 = 0" (identifier "lVar14") (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar13 = param_1;" (assignment_expression "puVar13 = param_1" (identifier "puVar13") (= "=") (identifier "param_1")) (; ";")) (expression_statement "uVar20 = *param_1;" (assignment_expression "uVar20 = *param_1" (identifier "uVar20") (= "=") (pointer_expression "*param_1" (* "*") (identifier "param_1"))) (; ";")) (labeled_statement "LAB_00131000:\n    uVar7 = lVar14 + uVar20;" (statement_identifier "LAB_00131000") (: ":") (expression_statement "uVar7 = lVar14 + uVar20;" (assignment_expression "uVar7 = lVar14 + uVar20" (identifier "uVar7") (= "=") (binary_expression "lVar14 + uVar20" (identifier "lVar14") (+ "+") (identifier "uVar20"))) (; ";"))) (expression_statement "uVar15 = puVar13[5];" (assignment_expression "uVar15 = puVar13[5]" (identifier "uVar15") (= "=") (subscript_expression "puVar13[5]" (identifier "puVar13") ([ "[") (number_literal "5") (] "]"))) (; ";")) (expression_statement "*puVar13 = uVar7;" (assignment_expression "*puVar13 = uVar7" (pointer_expression "*puVar13" (* "*") (identifier "puVar13")) (= "=") (identifier "uVar7")) (; ";")) (expression_statement "uVar6 = puVar13[4];" (assignment_expression "uVar6 = puVar13[4]" (identifier "uVar6") (= "=") (subscript_expression "puVar13[4]" (identifier "puVar13") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "iVar4 = *(int *)((long)puVar13 + 0x5c);" (assignment_expression "iVar4 = *(int *)((long)puVar13 + 0x5c)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)((long)puVar13 + 0x5c)" (* "*") (cast_expression "(int *)((long)puVar13 + 0x5c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar13 + 0x5c)" (( "(") (binary_expression "(long)puVar13 + 0x5c" (cast_expression "(long)puVar13" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar13")) (+ "+") (number_literal "0x5c")) () ")"))))) (; ";")) (expression_statement "*(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;" (assignment_expression "*(byte *)((long)puVar13 + 0x5a) =\n         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1" (pointer_expression "*(byte *)((long)puVar13 + 0x5a)" (* "*") (cast_expression "(byte *)((long)puVar13 + 0x5a)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar13 + 0x5a)" (( "(") (binary_expression "(long)puVar13 + 0x5a" (cast_expression "(long)puVar13" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar13")) (+ "+") (number_literal "0x5a")) () ")")))) (= "=") (binary_expression "*(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1" (binary_expression "*(byte *)((long)puVar13 + 0x5a) & 0xfe" (pointer_expression "*(byte *)((long)puVar13 + 0x5a)" (* "*") (cast_expression "(byte *)((long)puVar13 + 0x5a)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar13 + 0x5a)" (( "(") (binary_expression "(long)puVar13 + 0x5a" (cast_expression "(long)puVar13" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar13")) (+ "+") (number_literal "0x5a")) () ")")))) (& "&") (number_literal "0xfe")) (| "|") (binary_expression "*(byte *)((long)puVar13 + 0x5a) & 1 ^ 1" (binary_expression "*(byte *)((long)puVar13 + 0x5a) & 1" (pointer_expression "*(byte *)((long)puVar13 + 0x5a)" (* "*") (cast_expression "(byte *)((long)puVar13 + 0x5a)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar13 + 0x5a)" (( "(") (binary_expression "(long)puVar13 + 0x5a" (cast_expression "(long)puVar13" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar13")) (+ "+") (number_literal "0x5a")) () ")")))) (& "&") (number_literal "1")) (^ "^") (number_literal "1")))) (; ";")) (switch_statement "switch(iVar4) {\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }" (switch "switch") (parenthesized_expression "(iVar4)" (( "(") (identifier "iVar4") () ")")) (compound_statement "{\n    case 0:\n    case 6:\n    case 10:\n    default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");\n    case 2:\n    case 3:\n    case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;\n    case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 8:\n    case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }\n    case 1:\n    case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;\n    case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;\n    case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;\n    case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;\n    }" ({ "{") (case_statement "case 0:" (case "case") (number_literal "0") (: ":")) (case_statement "case 6:" (case "case") (number_literal "6") (: ":")) (case_statement "case 10:" (case "case") (number_literal "10") (: ":")) (case_statement "default:\n      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);\n                    \n      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");" (default "default") (: ":") (expression_statement "uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);" (assignment_expression "uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" (identifier "dcgettext") (argument_list "(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""Case value %ld unexpected at line %d of file \"%s\"\n"" (" """) (string_content "Case value %ld unexpected at line %d of file ") (escape_sequence "\"") (string_content "%s") (escape_sequence "\"") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");" (call_expression "FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c")" (identifier "FUN_0011f870") (argument_list "(uVar12,iVar4,0xbf4,"../../gas/write.c")" (( "(") (identifier "uVar12") (, ",") (identifier "iVar4") (, ",") (number_literal "0xbf4") (, ",") (string_literal ""../../gas/write.c"" (" """) (string_content "../../gas/write.c") (" """)) () ")"))) (; ";"))) (case_statement "case 2:" (case "case") (number_literal "2") (: ":")) (case_statement "case 3:" (case "case") (number_literal "3") (: ":")) (case_statement "case 4:\n      uVar6 = -1L << ((byte)uVar6 & 0x3f);\n      lVar8 = puVar13[2] + uVar20;\n      lVar9 = uVar7 + puVar13[2];\n      uVar15 = (ulong)(uint)puVar13[0xc];\n      uVar16 = lVar8 + ~uVar6 & uVar6;\n      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;\n      if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }\n      if (-1 < (long)uVar6) goto LAB_001312d8;\n      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      lVar14 = lVar14 + uVar6;\n      goto LAB_0013137d;" (case "case") (number_literal "4") (: ":") (expression_statement "uVar6 = -1L << ((byte)uVar6 & 0x3f);" (assignment_expression "uVar6 = -1L << ((byte)uVar6 & 0x3f)" (identifier "uVar6") (= "=") (binary_expression "-1L << ((byte)uVar6 & 0x3f)" (number_literal "-1L") (<< "<<") (parenthesized_expression "((byte)uVar6 & 0x3f)" (( "(") (binary_expression "(byte)uVar6 & 0x3f" (cast_expression "(byte)uVar6" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar6")) (& "&") (number_literal "0x3f")) () ")")))) (; ";")) (expression_statement "lVar8 = puVar13[2] + uVar20;" (assignment_expression "lVar8 = puVar13[2] + uVar20" (identifier "lVar8") (= "=") (binary_expression "puVar13[2] + uVar20" (subscript_expression "puVar13[2]" (identifier "puVar13") ([ "[") (number_literal "2") (] "]")) (+ "+") (identifier "uVar20"))) (; ";")) (expression_statement "lVar9 = uVar7 + puVar13[2];" (assignment_expression "lVar9 = uVar7 + puVar13[2]" (identifier "lVar9") (= "=") (binary_expression "uVar7 + puVar13[2]" (identifier "uVar7") (+ "+") (subscript_expression "puVar13[2]" (identifier "puVar13") ([ "[") (number_literal "2") (] "]")))) (; ";")) (expression_statement "uVar15 = (ulong)(uint)puVar13[0xc];" (assignment_expression "uVar15 = (ulong)(uint)puVar13[0xc]" (identifier "uVar15") (= "=") (cast_expression "(ulong)(uint)puVar13[0xc]" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (cast_expression "(uint)puVar13[0xc]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "puVar13[0xc]" (identifier "puVar13") ([ "[") (number_literal "0xc") (] "]"))))) (; ";")) (expression_statement "uVar16 = lVar8 + ~uVar6 & uVar6;" (assignment_expression "uVar16 = lVar8 + ~uVar6 & uVar6" (identifier "uVar16") (= "=") (binary_expression "lVar8 + ~uVar6 & uVar6" (binary_expression "lVar8 + ~uVar6" (identifier "lVar8") (+ "+") (unary_expression "~uVar6" (~ "~") (identifier "uVar6"))) (& "&") (identifier "uVar6"))) (; ";")) (expression_statement "uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;" (assignment_expression "uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9" (identifier "uVar20") (= "=") (binary_expression "(lVar9 + ~uVar6 & uVar6) - lVar9" (parenthesized_expression "(lVar9 + ~uVar6 & uVar6)" (( "(") (binary_expression "lVar9 + ~uVar6 & uVar6" (binary_expression "lVar9 + ~uVar6" (identifier "lVar9") (+ "+") (unary_expression "~uVar6" (~ "~") (identifier "uVar6"))) (& "&") (identifier "uVar6")) () ")")) (- "-") (identifier "lVar9"))) (; ";")) (if_statement "if ((uint)puVar13[0xc] == 0) {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }\n      else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }" (if "if") (parenthesized_expression "((uint)puVar13[0xc] == 0)" (( "(") (binary_expression "(uint)puVar13[0xc] == 0" (cast_expression "(uint)puVar13[0xc]" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (subscript_expression "puVar13[0xc]" (identifier "puVar13") ([ "[") (number_literal "0xc") (] "]"))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        uVar6 = (lVar8 - uVar16) + uVar20;\n      }" ({ "{") (expression_statement "uVar6 = (lVar8 - uVar16) + uVar20;" (assignment_expression "uVar6 = (lVar8 - uVar16) + uVar20" (identifier "uVar6") (= "=") (binary_expression "(lVar8 - uVar16) + uVar20" (parenthesized_expression "(lVar8 - uVar16)" (( "(") (binary_expression "lVar8 - uVar16" (identifier "lVar8") (- "-") (identifier "uVar16")) () ")")) (+ "+") (identifier "uVar20"))) (; ";")) (} "}")) (else_clause "else if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }" (else "else") (if_statement "if (uVar15 < uVar16 - lVar8) {\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }\n      else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }" (if "if") (parenthesized_expression "(uVar15 < uVar16 - lVar8)" (( "(") (binary_expression "uVar15 < uVar16 - lVar8" (identifier "uVar15") (< "<") (binary_expression "uVar16 - lVar8" (identifier "uVar16") (- "-") (identifier "lVar8"))) () ")")) (compound_statement "{\n        uVar6 = uVar20;\n        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;\n      }" ({ "{") (expression_statement "uVar6 = uVar20;" (assignment_expression "uVar6 = uVar20" (identifier "uVar6") (= "=") (identifier "uVar20")) (; ";")) (if_statement "if (uVar15 < uVar20) goto switchD_00131039_caseD_1;" (if "if") (parenthesized_expression "(uVar15 < uVar20)" (( "(") (binary_expression "uVar15 < uVar20" (identifier "uVar15") (< "<") (identifier "uVar20")) () ")")) (goto_statement "goto switchD_00131039_caseD_1;" (goto "goto") (statement_identifier "switchD_00131039_caseD_1") (; ";"))) (} "}")) (else_clause "else {\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }" (else "else") (compound_statement "{\n        uVar6 = (lVar8 - uVar16) + uVar20;\n        if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }\n      }" ({ "{") (expression_statement "uVar6 = (lVar8 - uVar16) + uVar20;" (assignment_expression "uVar6 = (lVar8 - uVar16) + uVar20" (identifier "uVar6") (= "=") (binary_expression "(lVar8 - uVar16) + uVar20" (parenthesized_expression "(lVar8 - uVar16)" (( "(") (binary_expression "lVar8 - uVar16" (identifier "lVar8") (- "-") (identifier "uVar16")) () ")")) (+ "+") (identifier "uVar20"))) (; ";")) (if_statement "if (uVar15 < uVar20) {\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }" (if "if") (parenthesized_expression "(uVar15 < uVar20)" (( "(") (binary_expression "uVar15 < uVar20" (identifier "uVar15") (< "<") (identifier "uVar20")) () ")")) (compound_statement "{\n          uVar20 = 0;\n          uVar6 = lVar8 - uVar16;\n        }" ({ "{") (expression_statement "uVar20 = 0;" (assignment_expression "uVar20 = 0" (identifier "uVar20") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar6 = lVar8 - uVar16;" (assignment_expression "uVar6 = lVar8 - uVar16" (identifier "uVar6") (= "=") (binary_expression "lVar8 - uVar16" (identifier "lVar8") (- "-") (identifier "uVar16"))) (; ";")) (} "}"))) (} "}")))))) (if_statement "if (-1 < (long)uVar6) goto LAB_001312d8;" (if "if") (parenthesized_expression "(-1 < (long)uVar6)" (( "(") (binary_expression "-1 < (long)uVar6" (number_literal "-1") (< "<") (cast_expression "(long)uVar6" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "uVar6"))) () ")")) (goto_statement "goto LAB_001312d8;" (goto "goto") (statement_identifier "LAB_001312d8") (; ";"))) (if_statement "if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }" (if "if") (parenthesized_expression "(((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0))" (( "(") (binary_expression "((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)" (parenthesized_expression "((uVar18 & 0x10) != 0)" (( "(") (binary_expression "(uVar18 & 0x10) != 0" (parenthesized_expression "(uVar18 & 0x10)" (( "(") (binary_expression "uVar18 & 0x10" (identifier "uVar18") (& "&") (number_literal "0x10")) () ")")) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "((uVar18 & 0xe) != 0)" (( "(") (binary_expression "(uVar18 & 0xe) != 0" (parenthesized_expression "(uVar18 & 0xe)" (( "(") (binary_expression "uVar18 & 0xe" (identifier "uVar18") (& "&") (number_literal "0xe")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n        lVar8 = *(long *)param_2[0x15];\n        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);\n        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);\n        *(long *)(lVar8 + 0x48) = lVar9;\n        if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }\n        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);\n        uVar15 = *(ulong *)(lVar8 + 0x50);\n        *(ulong *)(lVar8 + 0x48) = uVar16;\n        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }\n        *(ulong *)(lVar8 + 0x40) = uVar16;\n        uVar15 = puVar13[1];\n        *puVar11 = *puVar13;\n        puVar11[1] = uVar15;\n        uVar15 = puVar13[3];\n        puVar11[2] = puVar13[2];\n        puVar11[3] = uVar15;\n        uVar15 = puVar13[5];\n        puVar11[4] = puVar13[4];\n        puVar11[5] = uVar15;\n        uVar15 = puVar13[7];\n        puVar11[6] = puVar13[6];\n        puVar11[7] = uVar15;\n        uVar15 = puVar13[9];\n        puVar11[8] = puVar13[8];\n        puVar11[9] = uVar15;\n        uVar15 = puVar13[0xb];\n        puVar11[10] = puVar13[10];\n        puVar11[0xb] = uVar15;\n        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];\n        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);\n        uVar15 = puVar13[4];\n        uVar20 = uVar20 + uVar7 + puVar13[2];\n        *(undefined4 *)((long)puVar11 + 0x5c) = 1;\n        *puVar11 = uVar20;\n        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];\n        puVar11[2] = 0;\n        puVar11[4] = uVar7;\n        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);\n        if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }\n        uVar6 = uVar6 + uVar15;\n        *puVar11 = uVar20 - (uVar6 + lVar14);\n        *(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;\n        puVar13[7] = (ulong)puVar11;\n        goto LAB_00131409;\n      }" ({ "{") (expression_statement "lVar8 = *(long *)param_2[0x15];" (assignment_expression "lVar8 = *(long *)param_2[0x15]" (identifier "lVar8") (= "=") (pointer_expression "*(long *)param_2[0x15]" (* "*") (cast_expression "(long *)param_2[0x15]" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_2[0x15]" (identifier "param_2") ([ "[") (number_literal "0x15") (] "]"))))) (; ";")) (expression_statement "puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);" (assignment_expression "puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30)" (identifier "puVar11") (= "=") (cast_expression "(ulong *)FUN_00118840(lVar8 + 0x30)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_00118840(lVar8 + 0x30)" (identifier "FUN_00118840") (argument_list "(lVar8 + 0x30)" (( "(") (binary_expression "lVar8 + 0x30" (identifier "lVar8") (+ "+") (number_literal "0x30")) () ")"))))) (; ";")) (expression_statement "lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);" (assignment_expression "lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48)" (identifier "lVar9") (= "=") (binary_expression "puVar13[3] + *(long *)(lVar8 + 0x48)" (subscript_expression "puVar13[3]" (identifier "puVar13") ([ "[") (number_literal "3") (] "]")) (+ "+") (pointer_expression "*(long *)(lVar8 + 0x48)" (* "*") (cast_expression "(long *)(lVar8 + 0x48)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar8 + 0x48)" (( "(") (binary_expression "lVar8 + 0x48" (identifier "lVar8") (+ "+") (number_literal "0x48")) () ")")))))) (; ";")) (expression_statement "*(long *)(lVar8 + 0x48) = lVar9;" (assignment_expression "*(long *)(lVar8 + 0x48) = lVar9" (pointer_expression "*(long *)(lVar8 + 0x48)" (* "*") (cast_expression "(long *)(lVar8 + 0x48)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar8 + 0x48)" (( "(") (binary_expression "lVar8 + 0x48" (identifier "lVar8") (+ "+") (number_literal "0x48")) () ")")))) (= "=") (identifier "lVar9")) (; ";")) (if_statement "if (lVar9 == *(long *)(lVar8 + 0x40)) {\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }" (if "if") (parenthesized_expression "(lVar9 == *(long *)(lVar8 + 0x40))" (( "(") (binary_expression "lVar9 == *(long *)(lVar8 + 0x40)" (identifier "lVar9") (== "==") (pointer_expression "*(long *)(lVar8 + 0x40)" (* "*") (cast_expression "(long *)(lVar8 + 0x40)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar8 + 0x40)" (( "(") (binary_expression "lVar8 + 0x40" (identifier "lVar8") (+ "+") (number_literal "0x40")) () ")"))))) () ")")) (compound_statement "{\n          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;\n        }" ({ "{") (expression_statement "*(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;" (assignment_expression "*(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2" (pointer_expression "*(byte *)(lVar8 + 0x80)" (* "*") (cast_expression "(byte *)(lVar8 + 0x80)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar8 + 0x80)" (( "(") (binary_expression "lVar8 + 0x80" (identifier "lVar8") (+ "+") (number_literal "0x80")) () ")")))) (= "=") (binary_expression "*(byte *)(lVar8 + 0x80) | 2" (pointer_expression "*(byte *)(lVar8 + 0x80)" (* "*") (cast_expression "(byte *)(lVar8 + 0x80)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar8 + 0x80)" (( "(") (binary_expression "lVar8 + 0x80" (identifier "lVar8") (+ "+") (number_literal "0x80")) () ")")))) (| "|") (number_literal "2"))) (; ";")) (} "}"))) (expression_statement "uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);" (assignment_expression "uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60)" (identifier "uVar16") (= "=") (binary_expression "lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60)" (binary_expression "lVar9 + *(ulong *)(lVar8 + 0x60)" (identifier "lVar9") (+ "+") (pointer_expression "*(ulong *)(lVar8 + 0x60)" (* "*") (cast_expression "(ulong *)(lVar8 + 0x60)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar8 + 0x60)" (( "(") (binary_expression "lVar8 + 0x60" (identifier "lVar8") (+ "+") (number_literal "0x60")) () ")"))))) (& "&") (unary_expression "~*(ulong *)(lVar8 + 0x60)" (~ "~") (pointer_expression "*(ulong *)(lVar8 + 0x60)" (* "*") (cast_expression "(ulong *)(lVar8 + 0x60)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar8 + 0x60)" (( "(") (binary_expression "lVar8 + 0x60" (identifier "lVar8") (+ "+") (number_literal "0x60")) () ")"))))))) (; ";")) (expression_statement "uVar15 = *(ulong *)(lVar8 + 0x50);" (assignment_expression "uVar15 = *(ulong *)(lVar8 + 0x50)" (identifier "uVar15") (= "=") (pointer_expression "*(ulong *)(lVar8 + 0x50)" (* "*") (cast_expression "(ulong *)(lVar8 + 0x50)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar8 + 0x50)" (( "(") (binary_expression "lVar8 + 0x50" (identifier "lVar8") (+ "+") (number_literal "0x50")) () ")"))))) (; ";")) (expression_statement "*(ulong *)(lVar8 + 0x48) = uVar16;" (assignment_expression "*(ulong *)(lVar8 + 0x48) = uVar16" (pointer_expression "*(ulong *)(lVar8 + 0x48)" (* "*") (cast_expression "(ulong *)(lVar8 + 0x48)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar8 + 0x48)" (( "(") (binary_expression "lVar8 + 0x48" (identifier "lVar8") (+ "+") (number_literal "0x48")) () ")")))) (= "=") (identifier "uVar16")) (; ";")) (if_statement "if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }" (if "if") (parenthesized_expression "(uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38))" (( "(") (binary_expression "uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)" (binary_expression "uVar15 - *(long *)(lVar8 + 0x38)" (identifier "uVar15") (- "-") (pointer_expression "*(long *)(lVar8 + 0x38)" (* "*") (cast_expression "(long *)(lVar8 + 0x38)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar8 + 0x38)" (( "(") (binary_expression "lVar8 + 0x38" (identifier "lVar8") (+ "+") (number_literal "0x38")) () ")"))))) (< "<") (binary_expression "uVar16 - *(long *)(lVar8 + 0x38)" (identifier "uVar16") (- "-") (pointer_expression "*(long *)(lVar8 + 0x38)" (* "*") (cast_expression "(long *)(lVar8 + 0x38)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar8 + 0x38)" (( "(") (binary_expression "lVar8 + 0x38" (identifier "lVar8") (+ "+") (number_literal "0x38")) () ")")))))) () ")")) (compound_statement "{\n          *(ulong *)(lVar8 + 0x48) = uVar15;\n          uVar16 = uVar15;\n        }" ({ "{") (expression_statement "*(ulong *)(lVar8 + 0x48) = uVar15;" (assignment_expression "*(ulong *)(lVar8 + 0x48) = uVar15" (pointer_expression "*(ulong *)(lVar8 + 0x48)" (* "*") (cast_expression "(ulong *)(lVar8 + 0x48)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar8 + 0x48)" (( "(") (binary_expression "lVar8 + 0x48" (identifier "lVar8") (+ "+") (number_literal "0x48")) () ")")))) (= "=") (identifier "uVar15")) (; ";")) (expression_statement "uVar16 = uVar15;" (assignment_expression "uVar16 = uVar15" (identifier "uVar16") (= "=") (identifier "uVar15")) (; ";")) (} "}"))) (expression_statement "*(ulong *)(lVar8 + 0x40) = uVar16;" (assignment_expression "*(ulong *)(lVar8 + 0x40) = uVar16" (pointer_expression "*(ulong *)(lVar8 + 0x40)" (* "*") (cast_expression "(ulong *)(lVar8 + 0x40)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar8 + 0x40)" (( "(") (binary_expression "lVar8 + 0x40" (identifier "lVar8") (+ "+") (number_literal "0x40")) () ")")))) (= "=") (identifier "uVar16")) (; ";")) (expression_statement "uVar15 = puVar13[1];" (assignment_expression "uVar15 = puVar13[1]" (identifier "uVar15") (= "=") (subscript_expression "puVar13[1]" (identifier "puVar13") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "*puVar11 = *puVar13;" (assignment_expression "*puVar11 = *puVar13" (pointer_expression "*puVar11" (* "*") (identifier "puVar11")) (= "=") (pointer_expression "*puVar13" (* "*") (identifier "puVar13"))) (; ";")) (expression_statement "puVar11[1] = uVar15;" (assignment_expression "puVar11[1] = uVar15" (subscript_expression "puVar11[1]" (identifier "puVar11") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "uVar15")) (; ";")) (expression_statement "uVar15 = puVar13[3];" (assignment_expression "uVar15 = puVar13[3]" (identifier "uVar15") (= "=") (subscript_expression "puVar13[3]" (identifier "puVar13") ([ "[") (number_literal "3") (] "]"))) (; ";")) (expression_statement "puVar11[2] = puVar13[2];" (assignment_expression "puVar11[2] = puVar13[2]" (subscript_expression "puVar11[2]" (identifier "puVar11") ([ "[") (number_literal "2") (] "]")) (= "=") (subscript_expression "puVar13[2]" (identifier "puVar13") ([ "[") (number_literal "2") (] "]"))) (; ";")) (expression_statement "puVar11[3] = uVar15;" (assignment_expression "puVar11[3] = uVar15" (subscript_expression "puVar11[3]" (identifier "puVar11") ([ "[") (number_literal "3") (] "]")) (= "=") (identifier "uVar15")) (; ";")) (expression_statement "uVar15 = puVar13[5];" (assignment_expression "uVar15 = puVar13[5]" (identifier "uVar15") (= "=") (subscript_expression "puVar13[5]" (identifier "puVar13") ([ "[") (number_literal "5") (] "]"))) (; ";")) (expression_statement "puVar11[4] = puVar13[4];" (assignment_expression "puVar11[4] = puVar13[4]" (subscript_expression "puVar11[4]" (identifier "puVar11") ([ "[") (number_literal "4") (] "]")) (= "=") (subscript_expression "puVar13[4]" (identifier "puVar13") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "puVar11[5] = uVar15;" (assignment_expression "puVar11[5] = uVar15" (subscript_expression "puVar11[5]" (identifier "puVar11") ([ "[") (number_literal "5") (] "]")) (= "=") (identifier "uVar15")) (; ";")) (expression_statement "uVar15 = puVar13[7];" (assignment_expression "uVar15 = puVar13[7]" (identifier "uVar15") (= "=") (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]"))) (; ";")) (expression_statement "puVar11[6] = puVar13[6];" (assignment_expression "puVar11[6] = puVar13[6]" (subscript_expression "puVar11[6]" (identifier "puVar11") ([ "[") (number_literal "6") (] "]")) (= "=") (subscript_expression "puVar13[6]" (identifier "puVar13") ([ "[") (number_literal "6") (] "]"))) (; ";")) (expression_statement "puVar11[7] = uVar15;" (assignment_expression "puVar11[7] = uVar15" (subscript_expression "puVar11[7]" (identifier "puVar11") ([ "[") (number_literal "7") (] "]")) (= "=") (identifier "uVar15")) (; ";")) (expression_statement "uVar15 = puVar13[9];" (assignment_expression "uVar15 = puVar13[9]" (identifier "uVar15") (= "=") (subscript_expression "puVar13[9]" (identifier "puVar13") ([ "[") (number_literal "9") (] "]"))) (; ";")) (expression_statement "puVar11[8] = puVar13[8];" (assignment_expression "puVar11[8] = puVar13[8]" (subscript_expression "puVar11[8]" (identifier "puVar11") ([ "[") (number_literal "8") (] "]")) (= "=") (subscript_expression "puVar13[8]" (identifier "puVar13") ([ "[") (number_literal "8") (] "]"))) (; ";")) (expression_statement "puVar11[9] = uVar15;" (assignment_expression "puVar11[9] = uVar15" (subscript_expression "puVar11[9]" (identifier "puVar11") ([ "[") (number_literal "9") (] "]")) (= "=") (identifier "uVar15")) (; ";")) (expression_statement "uVar15 = puVar13[0xb];" (assignment_expression "uVar15 = puVar13[0xb]" (identifier "uVar15") (= "=") (subscript_expression "puVar13[0xb]" (identifier "puVar13") ([ "[") (number_literal "0xb") (] "]"))) (; ";")) (expression_statement "puVar11[10] = puVar13[10];" (assignment_expression "puVar11[10] = puVar13[10]" (subscript_expression "puVar11[10]" (identifier "puVar11") ([ "[") (number_literal "10") (] "]")) (= "=") (subscript_expression "puVar13[10]" (identifier "puVar13") ([ "[") (number_literal "10") (] "]"))) (; ";")) (expression_statement "puVar11[0xb] = uVar15;" (assignment_expression "puVar11[0xb] = uVar15" (subscript_expression "puVar11[0xb]" (identifier "puVar11") ([ "[") (number_literal "0xb") (] "]")) (= "=") (identifier "uVar15")) (; ";")) (expression_statement "*(int *)(puVar11 + 0xc) = (int)puVar13[0xc];" (assignment_expression "*(int *)(puVar11 + 0xc) = (int)puVar13[0xc]" (pointer_expression "*(int *)(puVar11 + 0xc)" (* "*") (cast_expression "(int *)(puVar11 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar11 + 0xc)" (( "(") (binary_expression "puVar11 + 0xc" (identifier "puVar11") (+ "+") (number_literal "0xc")) () ")")))) (= "=") (cast_expression "(int)puVar13[0xc]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "puVar13[0xc]" (identifier "puVar13") ([ "[") (number_literal "0xc") (] "]")))) (; ";")) (expression_statement "memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);" (call_expression "memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3])" (identifier "memcpy") (argument_list "((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3])" (( "(") (cast_expression "(void *)((long)puVar11 + 100)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar11 + 100)" (( "(") (binary_expression "(long)puVar11 + 100" (cast_expression "(long)puVar11" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar11")) (+ "+") (number_literal "100")) () ")"))) (, ",") (cast_expression "(void *)((long)puVar13 + puVar13[2] + 100)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar13 + puVar13[2] + 100)" (( "(") (binary_expression "(long)puVar13 + puVar13[2] + 100" (binary_expression "(long)puVar13 + puVar13[2]" (cast_expression "(long)puVar13" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar13")) (+ "+") (subscript_expression "puVar13[2]" (identifier "puVar13") ([ "[") (number_literal "2") (] "]"))) (+ "+") (number_literal "100")) () ")"))) (, ",") (subscript_expression "puVar13[3]" (identifier "puVar13") ([ "[") (number_literal "3") (] "]")) () ")"))) (; ";")) (expression_statement "uVar15 = puVar13[4];" (assignment_expression "uVar15 = puVar13[4]" (identifier "uVar15") (= "=") (subscript_expression "puVar13[4]" (identifier "puVar13") ([ "[") (number_literal "4") (] "]"))) (; ";")) (expression_statement "uVar20 = uVar20 + uVar7 + puVar13[2];" (assignment_expression "uVar20 = uVar20 + uVar7 + puVar13[2]" (identifier "uVar20") (= "=") (binary_expression "uVar20 + uVar7 + puVar13[2]" (binary_expression "uVar20 + uVar7" (identifier "uVar20") (+ "+") (identifier "uVar7")) (+ "+") (subscript_expression "puVar13[2]" (identifier "puVar13") ([ "[") (number_literal "2") (] "]")))) (; ";")) (expression_statement "*(undefined4 *)((long)puVar11 + 0x5c) = 1;" (assignment_expression "*(undefined4 *)((long)puVar11 + 0x5c) = 1" (pointer_expression "*(undefined4 *)((long)puVar11 + 0x5c)" (* "*") (cast_expression "(undefined4 *)((long)puVar11 + 0x5c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar11 + 0x5c)" (( "(") (binary_expression "(long)puVar11 + 0x5c" (cast_expression "(long)puVar11" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar11")) (+ "+") (number_literal "0x5c")) () ")")))) (= "=") (number_literal "1")) (; ";")) (expression_statement "*puVar11 = uVar20;" (assignment_expression "*puVar11 = uVar20" (pointer_expression "*puVar11" (* "*") (identifier "puVar11")) (= "=") (identifier "uVar20")) (; ";")) (expression_statement "uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];" (assignment_expression "uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3]" (identifier "uVar7") (= "=") (binary_expression "(1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3]" (parenthesized_expression "(1L << ((byte)uVar15 & 0x3f))" (( "(") (binary_expression "1L << ((byte)uVar15 & 0x3f)" (number_literal "1L") (<< "<<") (parenthesized_expression "((byte)uVar15 & 0x3f)" (( "(") (binary_expression "(byte)uVar15 & 0x3f" (cast_expression "(byte)uVar15" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar15")) (& "&") (number_literal "0x3f")) () ")"))) () ")")) (/ "/") (cast_expression "(long)puVar13[3]" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (subscript_expression "puVar13[3]" (identifier "puVar13") ([ "[") (number_literal "3") (] "]"))))) (; ";")) (expression_statement "puVar11[2] = 0;" (assignment_expression "puVar11[2] = 0" (subscript_expression "puVar11[2]" (identifier "puVar11") ([ "[") (number_literal "2") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar11[4] = uVar7;" (assignment_expression "puVar11[4] = uVar7" (subscript_expression "puVar11[4]" (identifier "puVar11") ([ "[") (number_literal "4") (] "]")) (= "=") (identifier "uVar7")) (; ";")) (expression_statement "uVar15 = 1L << ((byte)puVar13[4] & 0x3f);" (assignment_expression "uVar15 = 1L << ((byte)puVar13[4] & 0x3f)" (identifier "uVar15") (= "=") (binary_expression "1L << ((byte)puVar13[4] & 0x3f)" (number_literal "1L") (<< "<<") (parenthesized_expression "((byte)puVar13[4] & 0x3f)" (( "(") (binary_expression "(byte)puVar13[4] & 0x3f" (cast_expression "(byte)puVar13[4]" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (subscript_expression "puVar13[4]" (identifier "puVar13") ([ "[") (number_literal "4") (] "]"))) (& "&") (number_literal "0x3f")) () ")")))) (; ";")) (if_statement "if (uVar7 * puVar11[3] - uVar15 != 0) {\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }" (if "if") (parenthesized_expression "(uVar7 * puVar11[3] - uVar15 != 0)" (( "(") (binary_expression "uVar7 * puVar11[3] - uVar15 != 0" (binary_expression "uVar7 * puVar11[3] - uVar15" (binary_expression "uVar7 * puVar11[3]" (identifier "uVar7") (* "*") (subscript_expression "puVar11[3]" (identifier "puVar11") ([ "[") (number_literal "3") (] "]"))) (- "-") (identifier "uVar15")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          puVar11[4] = uVar15;\n          puVar11[3] = 1;\n        }" ({ "{") (expression_statement "puVar11[4] = uVar15;" (assignment_expression "puVar11[4] = uVar15" (subscript_expression "puVar11[4]" (identifier "puVar11") ([ "[") (number_literal "4") (] "]")) (= "=") (identifier "uVar15")) (; ";")) (expression_statement "puVar11[3] = 1;" (assignment_expression "puVar11[3] = 1" (subscript_expression "puVar11[3]" (identifier "puVar11") ([ "[") (number_literal "3") (] "]")) (= "=") (number_literal "1")) (; ";")) (} "}"))) (expression_statement "uVar6 = uVar6 + uVar15;" (assignment_expression "uVar6 = uVar6 + uVar15" (identifier "uVar6") (= "=") (binary_expression "uVar6 + uVar15" (identifier "uVar6") (+ "+") (identifier "uVar15"))) (; ";")) (expression_statement "*puVar11 = uVar20 - (uVar6 + lVar14);" (assignment_expression "*puVar11 = uVar20 - (uVar6 + lVar14)" (pointer_expression "*puVar11" (* "*") (identifier "puVar11")) (= "=") (binary_expression "uVar20 - (uVar6 + lVar14)" (identifier "uVar20") (- "-") (parenthesized_expression "(uVar6 + lVar14)" (( "(") (binary_expression "uVar6 + lVar14" (identifier "uVar6") (+ "+") (identifier "lVar14")) () ")")))) (; ";")) (expression_statement "*(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;" (assignment_expression "*(byte *)((long)puVar11 + 0x5a) =\n             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1" (pointer_expression "*(byte *)((long)puVar11 + 0x5a)" (* "*") (cast_expression "(byte *)((long)puVar11 + 0x5a)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar11 + 0x5a)" (( "(") (binary_expression "(long)puVar11 + 0x5a" (cast_expression "(long)puVar11" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar11")) (+ "+") (number_literal "0x5a")) () ")")))) (= "=") (binary_expression "*(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1" (binary_expression "*(byte *)((long)puVar11 + 0x5a) & 0xfe" (pointer_expression "*(byte *)((long)puVar11 + 0x5a)" (* "*") (cast_expression "(byte *)((long)puVar11 + 0x5a)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar11 + 0x5a)" (( "(") (binary_expression "(long)puVar11 + 0x5a" (cast_expression "(long)puVar11" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar11")) (+ "+") (number_literal "0x5a")) () ")")))) (& "&") (number_literal "0xfe")) (| "|") (binary_expression "*(byte *)((long)puVar11 + 0x5a) & 1 ^ 1" (binary_expression "*(byte *)((long)puVar11 + 0x5a) & 1" (pointer_expression "*(byte *)((long)puVar11 + 0x5a)" (* "*") (cast_expression "(byte *)((long)puVar11 + 0x5a)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar11 + 0x5a)" (( "(") (binary_expression "(long)puVar11 + 0x5a" (cast_expression "(long)puVar11" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar11")) (+ "+") (number_literal "0x5a")) () ")")))) (& "&") (number_literal "1")) (^ "^") (number_literal "1")))) (; ";")) (expression_statement "puVar13[7] = (ulong)puVar11;" (assignment_expression "puVar13[7] = (ulong)puVar11" (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]")) (= "=") (cast_expression "(ulong)puVar11" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "puVar11"))) (; ";")) (goto_statement "goto LAB_00131409;" (goto "goto") (statement_identifier "LAB_00131409") (; ";")) (} "}"))) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" (identifier "puVar11") (= "=") (cast_expression "(ulong *)puVar13[7]" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]")))) (; ";")) (expression_statement "lVar14 = lVar14 + uVar6;" (assignment_expression "lVar14 = lVar14 + uVar6" (identifier "lVar14") (= "=") (binary_expression "lVar14 + uVar6" (identifier "lVar14") (+ "+") (identifier "uVar6"))) (; ";")) (goto_statement "goto LAB_0013137d;" (goto "goto") (statement_identifier "LAB_0013137d") (; ";"))) (case_statement "case 5:\n      if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }\n      puVar11 = (ulong *)puVar13[7];\n      if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }\n      uVar15 = *puVar11;\n      if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }\n      uVar6 = uVar6 - (uVar15 + lVar14);\nLAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;" (case "case") (number_literal "5") (: ":") (if_statement "if (uVar15 != 0) {\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }" (if "if") (parenthesized_expression "(uVar15 != 0)" (( "(") (binary_expression "uVar15 != 0" (identifier "uVar15") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        lVar8 = FUN_0012af60(uVar15);\n        if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        uVar6 = uVar6 + lVar8;\n      }" ({ "{") (expression_statement "lVar8 = FUN_0012af60(uVar15);" (assignment_expression "lVar8 = FUN_0012af60(uVar15)" (identifier "lVar8") (= "=") (call_expression "FUN_0012af60(uVar15)" (identifier "FUN_0012af60") (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")")))) (; ";")) (if_statement "if (*(long *)(lVar8 + 0x28) != 0) {\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }" (if "if") (parenthesized_expression "(*(long *)(lVar8 + 0x28) != 0)" (( "(") (binary_expression "*(long *)(lVar8 + 0x28) != 0" (pointer_expression "*(long *)(lVar8 + 0x28)" (* "*") (cast_expression "(long *)(lVar8 + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar8 + 0x28)" (( "(") (binary_expression "lVar8 + 0x28" (identifier "lVar8") (+ "+") (number_literal "0x28")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n                    \n          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");\n        }" ({ "{") (expression_statement "FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");" (call_expression "FUN_0011f960("../../gas/write.c",0xb80,"relax_segment")" (identifier "FUN_0011f960") (argument_list "("../../gas/write.c",0xb80,"relax_segment")" (( "(") (string_literal ""../../gas/write.c"" (" """) (string_content "../../gas/write.c") (" """)) (, ",") (number_literal "0xb80") (, ",") (string_literal ""relax_segment"" (" """) (string_content "relax_segment") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "lVar8 = thunk_FUN_0012c290(uVar15);" (assignment_expression "lVar8 = thunk_FUN_0012c290(uVar15)" (identifier "lVar8") (= "=") (call_expression "thunk_FUN_0012c290(uVar15)" (identifier "thunk_FUN_0012c290") (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")")))) (; ";")) (expression_statement "uVar6 = uVar6 + lVar8;" (assignment_expression "uVar6 = uVar6 + lVar8" (identifier "uVar6") (= "=") (binary_expression "uVar6 + lVar8" (identifier "uVar6") (+ "+") (identifier "lVar8"))) (; ";")) (} "}"))) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" (identifier "puVar11") (= "=") (cast_expression "(ulong *)puVar13[7]" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]")))) (; ";")) (if_statement "if (puVar11 == (ulong *)0x0) {\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }" (if "if") (parenthesized_expression "(puVar11 == (ulong *)0x0)" (( "(") (binary_expression "puVar11 == (ulong *)0x0" (identifier "puVar11") (== "==") (cast_expression "(ulong *)0x0" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    \n        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");\n      }" ({ "{") (expression_statement "FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");" (call_expression "FUN_0011f960("../../gas/write.c",0xb84,"relax_segment")" (identifier "FUN_0011f960") (argument_list "("../../gas/write.c",0xb84,"relax_segment")" (( "(") (string_literal ""../../gas/write.c"" (" """) (string_content "../../gas/write.c") (" """)) (, ",") (number_literal "0xb84") (, ",") (string_literal ""relax_segment"" (" """) (string_content "relax_segment") (" """)) () ")"))) (; ";")) (} "}"))) (expression_statement "uVar15 = *puVar11;" (assignment_expression "uVar15 = *puVar11" (identifier "uVar15") (= "=") (pointer_expression "*puVar11" (* "*") (identifier "puVar11"))) (; ";")) (if_statement "if (uVar6 < uVar7 + puVar13[2]) {\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }" (if "if") (parenthesized_expression "(uVar6 < uVar7 + puVar13[2])" (( "(") (binary_expression "uVar6 < uVar7 + puVar13[2]" (identifier "uVar6") (< "<") (binary_expression "uVar7 + puVar13[2]" (identifier "uVar7") (+ "+") (subscript_expression "puVar13[2]" (identifier "puVar13") ([ "[") (number_literal "2") (] "]")))) () ")")) (compound_statement "{\n        if (param_3 < 2) goto code_r0x00131269;\n        uVar12 = dcgettext(0,"attempt to move .org backwards",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        *(undefined8 *)((long)puVar13 + 0x5c) = 2;\n        puVar13[4] = 0;\n        puVar13[2] = uVar15 - uVar20;\n        puVar11 = (ulong *)puVar13[7];\n        goto LAB_001311e7;\n      }" ({ "{") (if_statement "if (param_3 < 2) goto code_r0x00131269;" (if "if") (parenthesized_expression "(param_3 < 2)" (( "(") (binary_expression "param_3 < 2" (identifier "param_3") (< "<") (number_literal "2")) () ")")) (goto_statement "goto code_r0x00131269;" (goto "goto") (statement_identifier "code_r0x00131269") (; ";"))) (expression_statement "uVar12 = dcgettext(0,"attempt to move .org backwards",5);" (assignment_expression "uVar12 = dcgettext(0,"attempt to move .org backwards",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,"attempt to move .org backwards",5)" (identifier "dcgettext") (argument_list "(0,"attempt to move .org backwards",5)" (( "(") (number_literal "0") (, ",") (string_literal ""attempt to move .org backwards"" (" """) (string_content "attempt to move .org backwards") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);" (call_expression "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12)" (identifier "FUN_0011f7a0") (argument_list "(puVar13[8],(int)puVar13[9],uVar12)" (( "(") (subscript_expression "puVar13[8]" (identifier "puVar13") ([ "[") (number_literal "8") (] "]")) (, ",") (cast_expression "(int)puVar13[9]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "puVar13[9]" (identifier "puVar13") ([ "[") (number_literal "9") (] "]"))) (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "*(undefined8 *)((long)puVar13 + 0x5c) = 2;" (assignment_expression "*(undefined8 *)((long)puVar13 + 0x5c) = 2" (pointer_expression "*(undefined8 *)((long)puVar13 + 0x5c)" (* "*") (cast_expression "(undefined8 *)((long)puVar13 + 0x5c)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar13 + 0x5c)" (( "(") (binary_expression "(long)puVar13 + 0x5c" (cast_expression "(long)puVar13" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar13")) (+ "+") (number_literal "0x5c")) () ")")))) (= "=") (number_literal "2")) (; ";")) (expression_statement "puVar13[4] = 0;" (assignment_expression "puVar13[4] = 0" (subscript_expression "puVar13[4]" (identifier "puVar13") ([ "[") (number_literal "4") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar13[2] = uVar15 - uVar20;" (assignment_expression "puVar13[2] = uVar15 - uVar20" (subscript_expression "puVar13[2]" (identifier "puVar13") ([ "[") (number_literal "2") (] "]")) (= "=") (binary_expression "uVar15 - uVar20" (identifier "uVar15") (- "-") (identifier "uVar20"))) (; ";")) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" (identifier "puVar11") (= "=") (cast_expression "(ulong *)puVar13[7]" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]")))) (; ";")) (goto_statement "goto LAB_001311e7;" (goto "goto") (statement_identifier "LAB_001311e7") (; ";")) (} "}"))) (expression_statement "uVar6 = uVar6 - (uVar15 + lVar14);" (assignment_expression "uVar6 = uVar6 - (uVar15 + lVar14)" (identifier "uVar6") (= "=") (binary_expression "uVar6 - (uVar15 + lVar14)" (identifier "uVar6") (- "-") (parenthesized_expression "(uVar15 + lVar14)" (( "(") (binary_expression "uVar15 + lVar14" (identifier "uVar15") (+ "+") (identifier "lVar14")) () ")")))) (; ";")) (labeled_statement "LAB_00131409:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }" (statement_identifier "LAB_00131409") (: ":") (if_statement "if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }" (if "if") (parenthesized_expression "(uVar6 != 0)" (( "(") (binary_expression "uVar6 != 0" (identifier "uVar6") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\n        goto LAB_00131375;\n      }" ({ "{") (expression_statement "iVar4 = *(int *)((long)puVar13 + 0x5c);" (assignment_expression "iVar4 = *(int *)((long)puVar13 + 0x5c)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)((long)puVar13 + 0x5c)" (* "*") (cast_expression "(int *)((long)puVar13 + 0x5c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar13 + 0x5c)" (( "(") (binary_expression "(long)puVar13 + 0x5c" (cast_expression "(long)puVar13" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar13")) (+ "+") (number_literal "0x5c")) () ")"))))) (; ";")) (goto_statement "goto LAB_00131375;" (goto "goto") (statement_identifier "LAB_00131375") (; ";")) (} "}")))) (expression_statement "puVar13 = puVar11;" (assignment_expression "puVar13 = puVar11" (identifier "puVar13") (= "=") (identifier "puVar11")) (; ";")) (expression_statement "uVar20 = *puVar11;" (assignment_expression "uVar20 = *puVar11" (identifier "uVar20") (= "=") (pointer_expression "*puVar11" (* "*") (identifier "puVar11"))) (; ";")) (goto_statement "goto LAB_00131000;" (goto "goto") (statement_identifier "LAB_00131000") (; ";"))) (case_statement "case 8:" (case "case") (number_literal "8") (: ":")) (case_statement "case 9:\n      if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }" (case "case") (number_literal "9") (: ":") (if_statement "if (uVar15 != 0) {\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }" (if "if") (parenthesized_expression "(uVar15 != 0)" (( "(") (binary_expression "uVar15 != 0" (identifier "uVar15") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        lVar8 = thunk_FUN_0012c290(uVar15);\n        lVar9 = FUN_0012af60(uVar15);\n        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }\n        uVar12 = dcgettext(0,".space specifies non-absolute value",5);\n        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);\n        puVar13[5] = 0;\n      }" ({ "{") (expression_statement "lVar8 = thunk_FUN_0012c290(uVar15);" (assignment_expression "lVar8 = thunk_FUN_0012c290(uVar15)" (identifier "lVar8") (= "=") (call_expression "thunk_FUN_0012c290(uVar15)" (identifier "thunk_FUN_0012c290") (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")")))) (; ";")) (expression_statement "lVar9 = FUN_0012af60(uVar15);" (assignment_expression "lVar9 = FUN_0012af60(uVar15)" (identifier "lVar9") (= "=") (call_expression "FUN_0012af60(uVar15)" (identifier "FUN_0012af60") (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")")))) (; ";")) (if_statement "if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }" (if "if") (parenthesized_expression "(((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0))" (( "(") (binary_expression "((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&\n           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)" (parenthesized_expression "((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0))" (( "(") (binary_expression "(lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)" (parenthesized_expression "(lVar9 == 0x1949f0)" (( "(") (binary_expression "lVar9 == 0x1949f0" (identifier "lVar9") (== "==") (number_literal "0x1949f0")) () ")")) (&& "&&") (parenthesized_expression "(iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)" (( "(") (comma_expression "iVar4 = FUN_0012ac00(uVar15), iVar4 == 0" (assignment_expression "iVar4 = FUN_0012ac00(uVar15)" (identifier "iVar4") (= "=") (call_expression "FUN_0012ac00(uVar15)" (identifier "FUN_0012ac00") (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")")))) (, ",") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0"))) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)" (( "(") (comma_expression "iVar4 = FUN_0012ac30(uVar15), iVar4 != 0" (assignment_expression "iVar4 = FUN_0012ac30(uVar15)" (identifier "iVar4") (= "=") (call_expression "FUN_0012ac30(uVar15)" (identifier "FUN_0012ac30") (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")")))) (, ",") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\n          if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }\n          puVar11 = (ulong *)puVar13[7];\n          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;\n          goto LAB_00131409;\n        }" ({ "{") (if_statement "if (lVar8 < 0) {\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }" (if "if") (parenthesized_expression "(lVar8 < 0)" (( "(") (binary_expression "lVar8 < 0" (identifier "lVar8") (< "<") (number_literal "0")) () ")")) (compound_statement "{\n            if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }\n            goto LAB_001311e7;\n          }" ({ "{") (if_statement "if (param_3 < 2) {\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }\n            else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }" (if "if") (parenthesized_expression "(param_3 < 2)" (( "(") (binary_expression "param_3 < 2" (identifier "param_3") (< "<") (number_literal "2")) () ")")) (compound_statement "{\n              puVar11 = (ulong *)puVar13[7];\n              local_54 = 1;\n            }" ({ "{") (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" (identifier "puVar11") (= "=") (cast_expression "(ulong *)puVar13[7]" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]")))) (; ";")) (expression_statement "local_54 = 1;" (assignment_expression "local_54 = 1" (identifier "local_54") (= "=") (number_literal "1")) (; ";")) (} "}")) (else_clause "else {\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }" (else "else") (compound_statement "{\n              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);\n              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);\n              puVar13[5] = 0;\n              puVar11 = (ulong *)puVar13[7];\n            }" ({ "{") (expression_statement "uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);" (assignment_expression "uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,".space, .nops or .fill with negative value, ignored",5)" (identifier "dcgettext") (argument_list "(0,".space, .nops or .fill with negative value, ignored",5)" (( "(") (number_literal "0") (, ",") (string_literal "".space, .nops or .fill with negative value, ignored"" (" """) (string_content ".space, .nops or .fill with negative value, ignored") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);" (call_expression "FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12)" (identifier "FUN_0011f5f0") (argument_list "(puVar13[8],(int)puVar13[9],uVar12)" (( "(") (subscript_expression "puVar13[8]" (identifier "puVar13") ([ "[") (number_literal "8") (] "]")) (, ",") (cast_expression "(int)puVar13[9]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "puVar13[9]" (identifier "puVar13") ([ "[") (number_literal "9") (] "]"))) (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "puVar13[5] = 0;" (assignment_expression "puVar13[5] = 0" (subscript_expression "puVar13[5]" (identifier "puVar13") ([ "[") (number_literal "5") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" (identifier "puVar11") (= "=") (cast_expression "(ulong *)puVar13[7]" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]")))) (; ";")) (} "}")))) (goto_statement "goto LAB_001311e7;" (goto "goto") (statement_identifier "LAB_001311e7") (; ";")) (} "}"))) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" (identifier "puVar11") (= "=") (cast_expression "(ulong *)puVar13[7]" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]")))) (; ";")) (expression_statement "uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;" (assignment_expression "uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8" (identifier "uVar6") (= "=") (binary_expression "((puVar13[2] + uVar20) - *puVar11) + lVar8" (parenthesized_expression "((puVar13[2] + uVar20) - *puVar11)" (( "(") (binary_expression "(puVar13[2] + uVar20) - *puVar11" (parenthesized_expression "(puVar13[2] + uVar20)" (( "(") (binary_expression "puVar13[2] + uVar20" (subscript_expression "puVar13[2]" (identifier "puVar13") ([ "[") (number_literal "2") (] "]")) (+ "+") (identifier "uVar20")) () ")")) (- "-") (pointer_expression "*puVar11" (* "*") (identifier "puVar11"))) () ")")) (+ "+") (identifier "lVar8"))) (; ";")) (goto_statement "goto LAB_00131409;" (goto "goto") (statement_identifier "LAB_00131409") (; ";")) (} "}"))) (expression_statement "uVar12 = dcgettext(0,".space specifies non-absolute value",5);" (assignment_expression "uVar12 = dcgettext(0,".space specifies non-absolute value",5)" (identifier "uVar12") (= "=") (call_expression "dcgettext(0,".space specifies non-absolute value",5)" (identifier "dcgettext") (argument_list "(0,".space specifies non-absolute value",5)" (( "(") (number_literal "0") (, ",") (string_literal "".space specifies non-absolute value"" (" """) (string_content ".space specifies non-absolute value") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);" (call_expression "FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12)" (identifier "FUN_0011f7a0") (argument_list "(puVar13[8],(int)puVar13[9],uVar12)" (( "(") (subscript_expression "puVar13[8]" (identifier "puVar13") ([ "[") (number_literal "8") (] "]")) (, ",") (cast_expression "(int)puVar13[9]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "puVar13[9]" (identifier "puVar13") ([ "[") (number_literal "9") (] "]"))) (, ",") (identifier "uVar12") () ")"))) (; ";")) (expression_statement "puVar13[5] = 0;" (assignment_expression "puVar13[5] = 0" (subscript_expression "puVar13[5]" (identifier "puVar13") ([ "[") (number_literal "5") (] "]")) (= "=") (number_literal "0")) (; ";")) (} "}")))) (case_statement "case 1:" (case "case") (number_literal "1") (: ":")) (case_statement "case 7:\nswitchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];\nLAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;\nLAB_001311f0:\n      puVar13 = puVar11;\n      uVar20 = *puVar11;\n      goto LAB_00131000;" (case "case") (number_literal "7") (: ":") (labeled_statement "switchD_00131039_caseD_1:\n      puVar11 = (ulong *)puVar13[7];" (statement_identifier "switchD_00131039_caseD_1") (: ":") (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" (identifier "puVar11") (= "=") (cast_expression "(ulong *)puVar13[7]" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]")))) (; ";"))) (labeled_statement "LAB_001311e7:\n      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;" (statement_identifier "LAB_001311e7") (: ":") (if_statement "if (puVar11 == (ulong *)0x0) goto LAB_001312f1;" (if "if") (parenthesized_expression "(puVar11 == (ulong *)0x0)" (( "(") (binary_expression "puVar11 == (ulong *)0x0" (identifier "puVar11") (== "==") (cast_expression "(ulong *)0x0" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_001312f1;" (goto "goto") (statement_identifier "LAB_001312f1") (; ";")))) (labeled_statement "LAB_001311f0:\n      puVar13 = puVar11;" (statement_identifier "LAB_001311f0") (: ":") (expression_statement "puVar13 = puVar11;" (assignment_expression "puVar13 = puVar11" (identifier "puVar13") (= "=") (identifier "puVar11")) (; ";"))) (expression_statement "uVar20 = *puVar11;" (assignment_expression "uVar20 = *puVar11" (identifier "uVar20") (= "=") (pointer_expression "*puVar11" (* "*") (identifier "puVar11"))) (; ";")) (goto_statement "goto LAB_00131000;" (goto "goto") (statement_identifier "LAB_00131000") (; ";"))) (case_statement "case 0xb:\n      uVar12 = FUN_0012b400(uVar15);\n      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);\n      uVar6 = (ulong)uVar5 - puVar13[4];\n      puVar13[4] = (ulong)uVar5;\n      goto LAB_001312d8;" (case "case") (number_literal "0xb") (: ":") (expression_statement "uVar12 = FUN_0012b400(uVar15);" (assignment_expression "uVar12 = FUN_0012b400(uVar15)" (identifier "uVar12") (= "=") (call_expression "FUN_0012b400(uVar15)" (identifier "FUN_0012b400") (argument_list "(uVar15)" (( "(") (identifier "uVar15") () ")")))) (; ";")) (expression_statement "uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);" (assignment_expression "uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc])" (identifier "uVar5") (= "=") (call_expression "FUN_00124c80(uVar12,(int)puVar13[0xc])" (identifier "FUN_00124c80") (argument_list "(uVar12,(int)puVar13[0xc])" (( "(") (identifier "uVar12") (, ",") (cast_expression "(int)puVar13[0xc]" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (subscript_expression "puVar13[0xc]" (identifier "puVar13") ([ "[") (number_literal "0xc") (] "]"))) () ")")))) (; ";")) (expression_statement "uVar6 = (ulong)uVar5 - puVar13[4];" (assignment_expression "uVar6 = (ulong)uVar5 - puVar13[4]" (identifier "uVar6") (= "=") (binary_expression "(ulong)uVar5 - puVar13[4]" (cast_expression "(ulong)uVar5" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar5")) (- "-") (subscript_expression "puVar13[4]" (identifier "puVar13") ([ "[") (number_literal "4") (] "]")))) (; ";")) (expression_statement "puVar13[4] = (ulong)uVar5;" (assignment_expression "puVar13[4] = (ulong)uVar5" (subscript_expression "puVar13[4]" (identifier "puVar13") ([ "[") (number_literal "4") (] "]")) (= "=") (cast_expression "(ulong)uVar5" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar5"))) (; ";")) (goto_statement "goto LAB_001312d8;" (goto "goto") (statement_identifier "LAB_001312d8") (; ";"))) (case_statement "case 0xc:\n      iVar4 = FUN_00115810(puVar13);\n      uVar6 = (ulong)iVar4;\nLAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];\njoined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }\n      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;\nLAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }\n      if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }\n      local_48 = local_48 - 1;\n      if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }\n      break;" (case "case") (number_literal "0xc") (: ":") (expression_statement "iVar4 = FUN_00115810(puVar13);" (assignment_expression "iVar4 = FUN_00115810(puVar13)" (identifier "iVar4") (= "=") (call_expression "FUN_00115810(puVar13)" (identifier "FUN_00115810") (argument_list "(puVar13)" (( "(") (identifier "puVar13") () ")")))) (; ";")) (expression_statement "uVar6 = (ulong)iVar4;" (assignment_expression "uVar6 = (ulong)iVar4" (identifier "uVar6") (= "=") (cast_expression "(ulong)iVar4" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "iVar4"))) (; ";")) (labeled_statement "LAB_001312d8:\n      puVar11 = (ulong *)puVar13[7];" (statement_identifier "LAB_001312d8") (: ":") (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" (identifier "puVar11") (= "=") (cast_expression "(ulong *)puVar13[7]" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]")))) (; ";"))) (labeled_statement "joined_r0x00131369:\n      if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }" (statement_identifier "joined_r0x00131369") (: ":") (if_statement "if (uVar6 != 0) {\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }" (if "if") (parenthesized_expression "(uVar6 != 0)" (( "(") (binary_expression "uVar6 != 0" (identifier "uVar6") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        iVar4 = *(int *)((long)puVar13 + 0x5c);\nLAB_00131375:\n        lVar14 = lVar14 + uVar6;\n        if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }\n        goto LAB_001311e7;\n      }" ({ "{") (expression_statement "iVar4 = *(int *)((long)puVar13 + 0x5c);" (assignment_expression "iVar4 = *(int *)((long)puVar13 + 0x5c)" (identifier "iVar4") (= "=") (pointer_expression "*(int *)((long)puVar13 + 0x5c)" (* "*") (cast_expression "(int *)((long)puVar13 + 0x5c)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar13 + 0x5c)" (( "(") (binary_expression "(long)puVar13 + 0x5c" (cast_expression "(long)puVar13" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar13")) (+ "+") (number_literal "0x5c")) () ")"))))) (; ";")) (labeled_statement "LAB_00131375:\n        lVar14 = lVar14 + uVar6;" (statement_identifier "LAB_00131375") (: ":") (expression_statement "lVar14 = lVar14 + uVar6;" (assignment_expression "lVar14 = lVar14 + uVar6" (identifier "lVar14") (= "=") (binary_expression "lVar14 + uVar6" (identifier "lVar14") (+ "+") (identifier "uVar6"))) (; ";"))) (if_statement "if (iVar4 == 0xb) {\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }\n        else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }" (if "if") (parenthesized_expression "(iVar4 == 0xb)" (( "(") (binary_expression "iVar4 == 0xb" (identifier "iVar4") (== "==") (number_literal "0xb")) () ")")) (compound_statement "{\nLAB_001313e8:\n          uVar18 = uVar18 + 0x10;\n          bVar3 = true;\n        }" ({ "{") (labeled_statement "LAB_001313e8:\n          uVar18 = uVar18 + 0x10;" (statement_identifier "LAB_001313e8") (: ":") (expression_statement "uVar18 = uVar18 + 0x10;" (assignment_expression "uVar18 = uVar18 + 0x10" (identifier "uVar18") (= "=") (binary_expression "uVar18 + 0x10" (identifier "uVar18") (+ "+") (number_literal "0x10"))) (; ";"))) (expression_statement "bVar3 = true;" (assignment_expression "bVar3 = true" (identifier "bVar3") (= "=") (true "true")) (; ";")) (} "}")) (else_clause "else {\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }" (else "else") (compound_statement "{\nLAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;\n          uVar18 = 0;\n          bVar3 = true;\n        }" ({ "{") (labeled_statement "LAB_0013137d:\n          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;" (statement_identifier "LAB_0013137d") (: ":") (if_statement "if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;" (if "if") (parenthesized_expression "(((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0))" (( "(") (binary_expression "((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)" (parenthesized_expression "((iVar4 == 2) && ((uVar18 & 0x10) != 0))" (( "(") (binary_expression "(iVar4 == 2) && ((uVar18 & 0x10) != 0)" (parenthesized_expression "(iVar4 == 2)" (( "(") (binary_expression "iVar4 == 2" (identifier "iVar4") (== "==") (number_literal "2")) () ")")) (&& "&&") (parenthesized_expression "((uVar18 & 0x10) != 0)" (( "(") (binary_expression "(uVar18 & 0x10) != 0" (parenthesized_expression "(uVar18 & 0x10)" (( "(") (binary_expression "uVar18 & 0x10" (identifier "uVar18") (& "&") (number_literal "0x10")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(lVar14 == 0)" (( "(") (binary_expression "lVar14 == 0" (identifier "lVar14") (== "==") (number_literal "0")) () ")"))) () ")")) (goto_statement "goto LAB_001313e8;" (goto "goto") (statement_identifier "LAB_001313e8") (; ";")))) (expression_statement "uVar18 = 0;" (assignment_expression "uVar18 = 0" (identifier "uVar18") (= "=") (number_literal "0")) (; ";")) (expression_statement "bVar3 = true;" (assignment_expression "bVar3 = true" (identifier "bVar3") (= "=") (true "true")) (; ";")) (} "}")))) (goto_statement "goto LAB_001311e7;" (goto "goto") (statement_identifier "LAB_001311e7") (; ";")) (} "}")))) (if_statement "if (puVar11 != (ulong *)0x0) goto LAB_001311f0;" (if "if") (parenthesized_expression "(puVar11 != (ulong *)0x0)" (( "(") (binary_expression "puVar11 != (ulong *)0x0" (identifier "puVar11") (!= "!=") (cast_expression "(ulong *)0x0" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_001311f0;" (goto "goto") (statement_identifier "LAB_001311f0") (; ";"))) (labeled_statement "LAB_001312f1:\n      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }" (statement_identifier "LAB_001312f1") (: ":") (if_statement "if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }\n      else {\n        uVar18 = 0;\n      }" (if "if") (parenthesized_expression "((lVar14 == 0) && ((uVar18 & 0x10) == 0))" (( "(") (binary_expression "(lVar14 == 0) && ((uVar18 & 0x10) == 0)" (parenthesized_expression "(lVar14 == 0)" (( "(") (binary_expression "lVar14 == 0" (identifier "lVar14") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "((uVar18 & 0x10) == 0)" (( "(") (binary_expression "(uVar18 & 0x10) == 0" (parenthesized_expression "(uVar18 & 0x10)" (( "(") (binary_expression "uVar18 & 0x10" (identifier "uVar18") (& "&") (number_literal "0x10")) () ")")) (== "==") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n        uVar5 = uVar18 + 1;\n        uVar17 = uVar18 & 0xfffffff0;\n        uVar18 = 0;\n        if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }\n      }" ({ "{") (expression_statement "uVar5 = uVar18 + 1;" (assignment_expression "uVar5 = uVar18 + 1" (identifier "uVar5") (= "=") (binary_expression "uVar18 + 1" (identifier "uVar18") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar17 = uVar18 & 0xfffffff0;" (assignment_expression "uVar17 = uVar18 & 0xfffffff0" (identifier "uVar17") (= "=") (binary_expression "uVar18 & 0xfffffff0" (identifier "uVar18") (& "&") (number_literal "0xfffffff0"))) (; ";")) (expression_statement "uVar18 = 0;" (assignment_expression "uVar18 = 0" (identifier "uVar18") (= "=") (number_literal "0")) (; ";")) (if_statement "if (uVar17 != 0) {\n          uVar18 = uVar5;\n        }" (if "if") (parenthesized_expression "(uVar17 != 0)" (( "(") (binary_expression "uVar17 != 0" (identifier "uVar17") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          uVar18 = uVar5;\n        }" ({ "{") (expression_statement "uVar18 = uVar5;" (assignment_expression "uVar18 = uVar5" (identifier "uVar18") (= "=") (identifier "uVar5")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n        uVar18 = 0;\n      }" (else "else") (compound_statement "{\n        uVar18 = 0;\n      }" ({ "{") (expression_statement "uVar18 = 0;" (assignment_expression "uVar18 = 0" (identifier "uVar18") (= "=") (number_literal "0")) (; ";")) (} "}"))))) (if_statement "if (!bVar3) {\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }" (if "if") (parenthesized_expression "(!bVar3)" (( "(") (unary_expression "!bVar3" (! "!") (identifier "bVar3")) () ")")) (compound_statement "{\n        do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);\n        return local_54;\n      }" ({ "{") (do_statement "do {\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        } while (param_1 != (ulong *)0x0);" (do "do") (compound_statement "{\n          if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }\n          param_1 = (ulong *)param_1[7];\n        }" ({ "{") (if_statement "if (param_1[1] != *param_1) {\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }" (if "if") (parenthesized_expression "(param_1[1] != *param_1)" (( "(") (binary_expression "param_1[1] != *param_1" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (!= "!=") (pointer_expression "*param_1" (* "*") (identifier "param_1"))) () ")")) (compound_statement "{\n            param_1[1] = *param_1;\n            local_54 = 1;\n          }" ({ "{") (expression_statement "param_1[1] = *param_1;" (assignment_expression "param_1[1] = *param_1" (subscript_expression "param_1[1]" (identifier "param_1") ([ "[") (number_literal "1") (] "]")) (= "=") (pointer_expression "*param_1" (* "*") (identifier "param_1"))) (; ";")) (expression_statement "local_54 = 1;" (assignment_expression "local_54 = 1" (identifier "local_54") (= "=") (number_literal "1")) (; ";")) (} "}"))) (expression_statement "param_1 = (ulong *)param_1[7];" (assignment_expression "param_1 = (ulong *)param_1[7]" (identifier "param_1") (= "=") (cast_expression "(ulong *)param_1[7]" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "param_1[7]" (identifier "param_1") ([ "[") (number_literal "7") (] "]")))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(param_1 != (ulong *)0x0)" (( "(") (binary_expression "param_1 != (ulong *)0x0" (identifier "param_1") (!= "!=") (cast_expression "(ulong *)0x0" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (; ";")) (return_statement "return local_54;" (return "return") (identifier "local_54") (; ";")) (} "}"))) (expression_statement "local_48 = local_48 - 1;" (assignment_expression "local_48 = local_48 - 1" (identifier "local_48") (= "=") (binary_expression "local_48 - 1" (identifier "local_48") (- "-") (number_literal "1"))) (; ";")) (if_statement "if (local_48 == 0) {\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }" (if "if") (parenthesized_expression "(local_48 == 0)" (( "(") (binary_expression "local_48 == 0" (identifier "local_48") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        uVar12 = *param_2;\n        uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);\n                    \n        FUN_0011f870(uVar10,uVar12);\n      }" ({ "{") (expression_statement "uVar12 = *param_2;" (assignment_expression "uVar12 = *param_2" (identifier "uVar12") (= "=") (pointer_expression "*param_2" (* "*") (identifier "param_2"))) (; ";")) (expression_statement "uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5);" (assignment_expression "uVar10 = dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5)" (identifier "uVar10") (= "=") (call_expression "dcgettext(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5)" (identifier "dcgettext") (argument_list "(0,\n                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"\n                           ,5)" (( "(") (number_literal "0") (, ",") (string_literal ""Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"" (" """) (string_content "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0011f870(uVar10,uVar12);" (call_expression "FUN_0011f870(uVar10,uVar12)" (identifier "FUN_0011f870") (argument_list "(uVar10,uVar12)" (( "(") (identifier "uVar10") (, ",") (identifier "uVar12") () ")"))) (; ";")) (} "}"))) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 0xd:\n      iVar4 = FUN_00111570(puVar13);\n      puVar11 = (ulong *)puVar13[7];\n      uVar6 = (ulong)iVar4;\n      goto joined_r0x00131369;" (case "case") (number_literal "0xd") (: ":") (expression_statement "iVar4 = FUN_00111570(puVar13);" (assignment_expression "iVar4 = FUN_00111570(puVar13)" (identifier "iVar4") (= "=") (call_expression "FUN_00111570(puVar13)" (identifier "FUN_00111570") (argument_list "(puVar13)" (( "(") (identifier "puVar13") () ")")))) (; ";")) (expression_statement "puVar11 = (ulong *)puVar13[7];" (assignment_expression "puVar11 = (ulong *)puVar13[7]" (identifier "puVar11") (= "=") (cast_expression "(ulong *)puVar13[7]" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar13[7]" (identifier "puVar13") ([ "[") (number_literal "7") (] "]")))) (; ";")) (expression_statement "uVar6 = (ulong)iVar4;" (assignment_expression "uVar6 = (ulong)iVar4" (identifier "uVar6") (= "=") (cast_expression "(ulong)iVar4" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "iVar4"))) (; ";")) (goto_statement "goto joined_r0x00131369;" (goto "goto") (statement_identifier "joined_r0x00131369") (; ";"))) (} "}"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (labeled_statement "code_r0x00131269:\n  local_54 = 1;" (statement_identifier "code_r0x00131269") (: ":") (expression_statement "local_54 = 1;" (assignment_expression "local_54 = 1" (identifier "local_54") (= "=") (number_literal "1")) (; ";"))) (expression_statement "puVar13 = puVar11;" (assignment_expression "puVar13 = puVar11" (identifier "puVar13") (= "=") (identifier "puVar11")) (; ";")) (expression_statement "uVar20 = uVar15;" (assignment_expression "uVar20 = uVar15" (identifier "uVar20") (= "=") (identifier "uVar15")) (; ";")) (goto_statement "goto LAB_00131000;" (goto "goto") (statement_identifier "LAB_00131000") (; ";")) (} "}")))

int function_1(type_1 *var_2,type_2 segment,int var_32)

{
  type_3 *poVar1;
  type_3 *poVar2;
  type_4 var_21;
  type_5 *var_26;
  type_4 var_33;
  type_3 oVar6;
  type_1 *pfVar7;
  bool bVar8;
  type_6 uVar9;
  int var_37;
  type_7 uVar11;
  type_8 var_6;
  type_8 var_7;
  type_2 var_34;
  char *format;
  type_9 var_30;
  type_10 *var_31;
  long var_16;
  char *pcVar18;
  type_11 var_42;
  long var_22;
  type_1 *var_17;
  long var_19;
  type_8 var_8;
  type_7 var_45;
  type_7 var_23;
  short var_11;
  type_4 var_20;
  type_8 var_3;
  int local_54;
  type_8 var_18;
  
  var_1(segment,0);
  if (var_2 == (type_1 *)0x0) {
    return 0;
  }
  var_11 = 0;
  var_3 = 0;
  var_17 = var_2;
  var_19 = 0;
  do {
    var_16 = var_19;
    var_42 = var_17->fr_type;
    var_17->fr_address = var_3;
    *(short *)&var_17->field_0x58 = var_11;
    var_3 = var_17->fr_fix + var_3;
    var_17->field_0x5a = var_17->field_0x5a & 0xfe;
    switch(var_42) {
    case rs_dummy:
    case rs_broken_word:
    case rs_fill_nop:
    default:
      pcVar18 = (char *)var_4(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);
                    /* WARNING: Subroutine does not return */
      var_5(pcVar18,(type_8)var_42,0xaa0,"../../gas/write.c");
    case rs_fill:
      poVar1 = &var_17->fr_offset;
      poVar2 = &var_17->fr_var;
      var_17 = var_17->fr_next;
      var_3 = *poVar1 * *poVar2 + var_3;
      break;
    case var_44:
    case rs_align_code:
    case rs_align_test:
      var_6 = -1L << ((type_12)var_17->fr_offset & 0x3f);
      var_6 = ~var_6 + var_3 & var_6;
      var_7 = var_6 - var_3;
      if (((var_17->fr_subtype == 0) || (var_7 <= var_17->fr_subtype)) &&
         (var_8 = var_17->fr_var, var_3 = var_6, var_7 % var_8 != 0)) {
        pcVar18 = (char *)var_9(0,"alignment padding (%lu byte) not a multiple of %ld",
                                     "alignment padding (%lu bytes) not a multiple of %ld",var_7,5)
        ;
        var_10(var_17->fr_file,var_17->fr_line,pcVar18,var_7,var_8);
        var_3 = var_6 - var_7 % (type_8)var_17->fr_var;
      }
    case rs_org:
      var_17 = var_17->fr_next;
      var_11 = var_11 + 1;
      break;
    case rs_machine_dependent:
      if (var_17->fr_symbol != (type_5 *)0x0) {
        var_12(var_17->fr_symbol);
      }
      var_37 = var_13(var_17,segment);
      var_3 = (long)var_37 + var_3;
    case rs_space:
    case rs_space_nop:
      var_17 = var_17->fr_next;
      break;
    case var_43:
      var_17->fr_offset = 1;
      var_17 = var_17->fr_next;
      var_3 = var_3 + 1;
      break;
    case rs_cfa:
      var_37 = var_14(var_17);
      var_17 = var_17->fr_next;
      var_3 = (long)var_37 + var_3;
      break;
    case rs_dwarf2dbg:
      var_37 = var_15(var_17);
      var_17 = var_17->fr_next;
      var_3 = (long)var_37 + var_3;
    }
    var_19 = var_16 + 1;
  } while (var_17 != (type_1 *)0x0);
  var_18 = var_16 + 1;
  local_54 = 0;
  if (var_18 <= var_18 * var_18) {
    var_18 = var_18 * var_18;
  }
  var_23 = 0;
  do {
    if (var_2 == (type_1 *)0x0) {
      return local_54;
    }
    bVar8 = false;
    var_19 = 0;
    var_17 = var_2;
    var_20 = var_2->fr_address;
LAB_00131000:
    var_21 = var_19 + var_20;
    var_26 = var_17->fr_symbol;
    var_17->fr_address = var_21;
    var_3 = var_17->fr_offset;
    var_42 = var_17->fr_type;
    var_17->field_0x5a = var_17->field_0x5a & 0xfe | var_17->field_0x5a & 1 ^ 1;
    switch(var_42) {
    case rs_dummy:
    case rs_broken_word:
    case rs_fill_nop:
    default:
      pcVar18 = (char *)var_4(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);
                    /* WARNING: Subroutine does not return */
      var_5(pcVar18,(type_8)var_42,0xbf4,"../../gas/write.c");
    case var_44:
    case rs_align_code:
    case rs_align_test:
      var_3 = -1L << ((type_12)var_3 & 0x3f);
      var_16 = var_17->fr_fix + var_20;
      var_22 = var_21 + var_17->fr_fix;
      var_7 = (type_8)var_17->fr_subtype;
      var_8 = var_16 + ~var_3 & var_3;
      var_6 = (var_22 + ~var_3 & var_3) - var_22;
      if (var_17->fr_subtype == 0) {
        var_3 = (var_16 - var_8) + var_6;
      }
      else if (var_7 < var_8 - var_16) {
        var_3 = var_6;
        if (var_7 < var_6) goto switchD_00131039_caseD_1;
      }
      else {
        var_3 = (var_16 - var_8) + var_6;
        if (var_7 < var_6) {
          var_6 = 0;
          var_3 = var_16 - var_8;
        }
      }
      if (-1 < (long)var_3) goto LAB_001312d8;
      if (((var_23 & 0x10) != 0) && ((var_23 & 0xe) != 0)) {
                    /* WARNING: Load size is inaccurate */
        var_16 = *segment->userdata;
        var_31 = var_24((type_13 *)(var_16 + 0x30));
        var_22 = var_17->fr_var + *(long *)(var_16 + 0x48);
        *(long *)(var_16 + 0x48) = var_22;
        if (var_22 == *(long *)(var_16 + 0x40)) {
          *(type_12 *)(var_16 + 0x80) = *(type_12 *)(var_16 + 0x80) | 2;
        }
        var_8 = var_22 + *(type_8 *)(var_16 + 0x60) & ~*(type_8 *)(var_16 + 0x60);
        var_7 = *(type_8 *)(var_16 + 0x50);
        *(type_8 *)(var_16 + 0x48) = var_8;
        if (var_7 - *(long *)(var_16 + 0x38) < var_8 - *(long *)(var_16 + 0x38)) {
          *(type_8 *)(var_16 + 0x48) = var_7;
          var_8 = var_7;
        }
        *(type_8 *)(var_16 + 0x40) = var_8;
        var_20 = var_17->last_fr_address;
        var_31->fr_address = var_17->fr_address;
        var_31->last_fr_address = var_20;
        oVar6 = var_17->fr_var;
        var_31->fr_fix = var_17->fr_fix;
        var_31->fr_var = oVar6;
        var_26 = var_17->fr_symbol;
        var_31->fr_offset = var_17->fr_offset;
        var_31->fr_symbol = var_26;
        pfVar7 = var_17->fr_next;
        var_31->fr_opcode = var_17->fr_opcode;
        var_31->fr_next = pfVar7;
        uVar11 = var_17->fr_line;
        uVar9 = *(type_6 *)&var_17->field_0x4c;
        var_31->fr_file = var_17->fr_file;
        var_31->fr_line = uVar11;
        *(type_6 *)&var_31->field_0x4c = uVar9;
        uVar9 = *(type_6 *)&var_17->field_0x58;
        var_42 = var_17->fr_type;
        var_31->line = var_17->line;
        *(type_6 *)&var_31->field_0x58 = uVar9;
        var_31->fr_type = var_42;
        var_31->fr_subtype = var_17->fr_subtype;
        var_25(var_31->fr_literal,var_17->fr_literal + var_17->fr_fix,var_17->fr_var);
        oVar6 = var_17->fr_offset;
        var_20 = var_6 + var_21 + var_17->fr_fix;
        var_31->fr_type = rs_fill;
        var_31->fr_address = var_20;
        var_16 = (1L << ((type_12)oVar6 & 0x3f)) / var_17->fr_var;
        var_31->fr_fix = 0;
        var_31->fr_offset = var_16;
        var_22 = 1L << ((type_12)var_17->fr_offset & 0x3f);
        if (var_16 * var_31->fr_var - var_22 != 0) {
          var_31->fr_offset = var_22;
          var_31->fr_var = 1;
        }
        var_3 = var_3 + var_22;
        var_31->fr_address = var_20 - (var_3 + var_19);
        var_31->field_0x5a = var_31->field_0x5a & 0xfe | var_31->field_0x5a & 1 ^ 1;
        var_17->fr_next = var_31;
        goto LAB_00131409;
      }
      var_31 = var_17->fr_next;
      var_19 = var_19 + var_3;
      goto LAB_0013137d;
    case rs_org:
      if (var_26 != (type_5 *)0x0) {
        var_34 = var_27(var_26);
        if (var_34->vma != 0) {
                    /* WARNING: Subroutine does not return */
          var_28("../../gas/write.c",0xb80,"relax_segment");
        }
        var_30 = var_29(var_26);
        var_3 = var_3 + var_30;
      }
      var_31 = var_17->fr_next;
      if (var_31 == (type_10 *)0x0) {
                    /* WARNING: Subroutine does not return */
        var_28("../../gas/write.c",0xb84,"relax_segment");
      }
      var_33 = var_31->fr_address;
      if (var_3 < var_21 + var_17->fr_fix) {
        if (var_32 < 2) goto code_r0x00131269;
        pcVar18 = (char *)var_4(0,"attempt to move .org backwards",5);
        var_10(var_17->fr_file,var_17->fr_line,pcVar18);
        var_17->fr_type = var_44;
        var_17->fr_subtype = 0;
        var_17->fr_offset = 0;
        var_17->fr_fix = var_33 - var_20;
        var_31 = var_17->fr_next;
        goto LAB_001311e7;
      }
      var_3 = var_3 - (var_33 + var_19);
LAB_00131409:
      if (var_3 != 0) {
        var_42 = var_17->fr_type;
        goto LAB_00131375;
      }
      var_17 = var_31;
      var_20 = var_31->fr_address;
      goto LAB_00131000;
    case rs_space:
    case rs_space_nop:
      if (var_26 != (type_5 *)0x0) {
        var_30 = var_29(var_26);
        var_34 = var_27(var_26);
        if (((var_34 == (type_2)(var_35 + 0x230)) &&
            (var_37 = var_36(var_26), var_37 == 0)) &&
           (var_37 = var_38(var_26), var_37 != 0)) {
          if ((long)var_30 < 0) {
            if (var_32 < 2) {
              var_31 = var_17->fr_next;
              local_54 = 1;
            }
            else {
              pcVar18 = (char *)var_4(0,".space, .nops or .fill with negative value, ignored",5)
              ;
              var_39(var_17->fr_file,var_17->fr_line,pcVar18);
              var_17->fr_symbol = (type_5 *)0x0;
              var_31 = var_17->fr_next;
            }
            goto LAB_001311e7;
          }
          var_31 = var_17->fr_next;
          var_3 = ((var_17->fr_fix + var_20) - var_31->fr_address) + var_30;
          goto LAB_00131409;
        }
        pcVar18 = (char *)var_4(0,".space specifies non-absolute value",5);
        var_10(var_17->fr_file,var_17->fr_line,pcVar18);
        var_17->fr_symbol = (type_5 *)0x0;
      }
    case rs_fill:
    case rs_machine_dependent:
switchD_00131039_caseD_1:
      var_31 = var_17->fr_next;
LAB_001311e7:
      if (var_31 == (type_10 *)0x0) goto LAB_001312f1;
LAB_001311f0:
      var_17 = var_31;
      var_20 = var_31->fr_address;
      goto LAB_00131000;
    case var_43:
      var_30 = var_12(var_26);
      uVar11 = var_40(var_30,var_17->fr_subtype);
      var_3 = (type_8)uVar11 - var_17->fr_offset;
      var_17->fr_offset = (type_8)uVar11;
      goto LAB_001312d8;
    case rs_cfa:
      var_37 = var_41(var_17);
      var_3 = (type_8)var_37;
LAB_001312d8:
      var_31 = var_17->fr_next;
joined_r0x00131369:
      if (var_3 != 0) {
        var_42 = var_17->fr_type;
LAB_00131375:
        var_19 = var_19 + var_3;
        if (var_42 == var_43) {
LAB_001313e8:
          var_23 = var_23 + 0x10;
          bVar8 = true;
        }
        else {
LAB_0013137d:
          if (((var_42 == var_44) && ((var_23 & 0x10) != 0)) && (var_19 == 0)) goto LAB_001313e8;
          var_23 = 0;
          bVar8 = true;
        }
        goto LAB_001311e7;
      }
      if (var_31 != (type_10 *)0x0) goto LAB_001311f0;
LAB_001312f1:
      if ((var_19 == 0) && ((var_23 & 0x10) == 0)) {
        uVar11 = var_23 + 1;
        var_45 = var_23 & 0xfffffff0;
        var_23 = 0;
        if (var_45 != 0) {
          var_23 = uVar11;
        }
      }
      else {
        var_23 = 0;
      }
      if (!bVar8) {
        do {
          if (var_2->last_fr_address != var_2->fr_address) {
            var_2->last_fr_address = var_2->fr_address;
            local_54 = 1;
          }
          var_2 = var_2->fr_next;
        } while (var_2 != (type_1 *)0x0);
        return local_54;
      }
      var_18 = var_18 - 1;
      if (var_18 == 0) {
        pcVar18 = segment->name;
        format = (char *)var_4(0,
                                   "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"
                                   ,5);
                    /* WARNING: Subroutine does not return */
        var_5(format,pcVar18);
      }
      break;
    case rs_dwarf2dbg:
      var_37 = var_46(var_17);
      var_31 = var_17->fr_next;
      var_3 = (type_8)var_37;
      goto joined_r0x00131369;
    }
  } while( true );
code_r0x00131269:
  local_54 = 1;
  var_17 = var_31;
  var_20 = var_33;
  goto LAB_00131000;
}


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

undefined4 MASKED(ulong *param_1,undefined8 *param_2,int param_3)

{
  ulong *puVar1;
  undefined4 uVar2;
  bool bVar3;
  int iVar4;
  uint uVar5;
  ulong uVar6;
  ulong uVar7;
  long lVar8;
  long lVar9;
  undefined8 uVar10;
  ulong *puVar11;
  undefined8 uVar12;
  ulong *puVar13;
  long lVar14;
  ulong uVar15;
  ulong uVar16;
  uint uVar17;
  uint uVar18;
  short sVar19;
  ulong uVar20;
  undefined4 local_54;
  ulong local_48;
  
  FUN_00129130(param_2,0);
  if (param_1 == (ulong *)0x0) {
    return 0;
  }
  sVar19 = 0;
  uVar20 = 0;
  puVar13 = param_1;
  lVar14 = 0;
  do {
    lVar8 = lVar14;
    uVar2 = *(undefined4 *)((long)puVar13 + 0x5c);
    *puVar13 = uVar20;
    *(short *)(puVar13 + 0xb) = sVar19;
    uVar20 = puVar13[2] + uVar20;
    *(byte *)((long)puVar13 + 0x5a) = *(byte *)((long)puVar13 + 0x5a) & 0xfe;
    switch(uVar2) {
    case 0:
    case 6:
    case 10:
    default:
      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);
                    /* WARNING: Subroutine does not return */
      FUN_0011f870(uVar12,uVar2,0xaa0,"../../gas/write.c");
    case 1:
      puVar11 = puVar13 + 4;
      puVar1 = puVar13 + 3;
      puVar13 = (ulong *)puVar13[7];
      uVar20 = *puVar11 * *puVar1 + uVar20;
      break;
    case 2:
    case 3:
    case 4:
      uVar6 = -1L << ((byte)puVar13[4] & 0x3f);
      uVar6 = ~uVar6 + uVar20 & uVar6;
      uVar7 = uVar6 - uVar20;
      if ((((uint)puVar13[0xc] == 0) || (uVar7 <= (uint)puVar13[0xc])) &&
         (uVar15 = puVar13[3], uVar20 = uVar6, uVar7 % uVar15 != 0)) {
        uVar12 = dcngettext(0,"alignment padding (%lu byte) not a multiple of %ld",
                            "alignment padding (%lu bytes) not a multiple of %ld",uVar7,5);
        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12,uVar7,uVar15);
        uVar20 = uVar6 - uVar7 % puVar13[3];
      }
    case 5:
      puVar13 = (ulong *)puVar13[7];
      sVar19 = sVar19 + 1;
      break;
    case 7:
      if (puVar13[5] != 0) {
        FUN_0012b400();
      }
      iVar4 = FUN_00136870(puVar13,param_2);
      uVar20 = (long)iVar4 + uVar20;
    case 8:
    case 9:
      puVar13 = (ulong *)puVar13[7];
      break;
    case 0xb:
      puVar13[4] = 1;
      puVar13 = (ulong *)puVar13[7];
      uVar20 = uVar20 + 1;
      break;
    case 0xc:
      iVar4 = FUN_00115780(puVar13);
      puVar13 = (ulong *)puVar13[7];
      uVar20 = (long)iVar4 + uVar20;
      break;
    case 0xd:
      iVar4 = FUN_00111530(puVar13);
      puVar13 = (ulong *)puVar13[7];
      uVar20 = (long)iVar4 + uVar20;
    }
    lVar14 = lVar8 + 1;
  } while (puVar13 != (ulong *)0x0);
  local_48 = lVar8 + 1;
  local_54 = 0;
  if (local_48 <= local_48 * local_48) {
    local_48 = local_48 * local_48;
  }
  uVar18 = 0;
  do {
    if (param_1 == (ulong *)0x0) {
      return local_54;
    }
    bVar3 = false;
    lVar14 = 0;
    puVar13 = param_1;
    uVar20 = *param_1;
LAB_00131000:
    uVar7 = lVar14 + uVar20;
    uVar15 = puVar13[5];
    *puVar13 = uVar7;
    uVar6 = puVar13[4];
    iVar4 = *(int *)((long)puVar13 + 0x5c);
    *(byte *)((long)puVar13 + 0x5a) =
         *(byte *)((long)puVar13 + 0x5a) & 0xfe | *(byte *)((long)puVar13 + 0x5a) & 1 ^ 1;
    switch(iVar4) {
    case 0:
    case 6:
    case 10:
    default:
      uVar12 = dcgettext(0,"Case value %ld unexpected at line %d of file \"%s\"\n",5);
                    /* WARNING: Subroutine does not return */
      FUN_0011f870(uVar12,iVar4,0xbf4,"../../gas/write.c");
    case 2:
    case 3:
    case 4:
      uVar6 = -1L << ((byte)uVar6 & 0x3f);
      lVar8 = puVar13[2] + uVar20;
      lVar9 = uVar7 + puVar13[2];
      uVar15 = (ulong)(uint)puVar13[0xc];
      uVar16 = lVar8 + ~uVar6 & uVar6;
      uVar20 = (lVar9 + ~uVar6 & uVar6) - lVar9;
      if ((uint)puVar13[0xc] == 0) {
        uVar6 = (lVar8 - uVar16) + uVar20;
      }
      else if (uVar15 < uVar16 - lVar8) {
        uVar6 = uVar20;
        if (uVar15 < uVar20) goto switchD_00131039_caseD_1;
      }
      else {
        uVar6 = (lVar8 - uVar16) + uVar20;
        if (uVar15 < uVar20) {
          uVar20 = 0;
          uVar6 = lVar8 - uVar16;
        }
      }
      if (-1 < (long)uVar6) goto LAB_001312d8;
      if (((uVar18 & 0x10) != 0) && ((uVar18 & 0xe) != 0)) {
        lVar8 = *(long *)param_2[0x15];
        puVar11 = (ulong *)FUN_00118840(lVar8 + 0x30);
        lVar9 = puVar13[3] + *(long *)(lVar8 + 0x48);
        *(long *)(lVar8 + 0x48) = lVar9;
        if (lVar9 == *(long *)(lVar8 + 0x40)) {
          *(byte *)(lVar8 + 0x80) = *(byte *)(lVar8 + 0x80) | 2;
        }
        uVar16 = lVar9 + *(ulong *)(lVar8 + 0x60) & ~*(ulong *)(lVar8 + 0x60);
        uVar15 = *(ulong *)(lVar8 + 0x50);
        *(ulong *)(lVar8 + 0x48) = uVar16;
        if (uVar15 - *(long *)(lVar8 + 0x38) < uVar16 - *(long *)(lVar8 + 0x38)) {
          *(ulong *)(lVar8 + 0x48) = uVar15;
          uVar16 = uVar15;
        }
        *(ulong *)(lVar8 + 0x40) = uVar16;
        uVar15 = puVar13[1];
        *puVar11 = *puVar13;
        puVar11[1] = uVar15;
        uVar15 = puVar13[3];
        puVar11[2] = puVar13[2];
        puVar11[3] = uVar15;
        uVar15 = puVar13[5];
        puVar11[4] = puVar13[4];
        puVar11[5] = uVar15;
        uVar15 = puVar13[7];
        puVar11[6] = puVar13[6];
        puVar11[7] = uVar15;
        uVar15 = puVar13[9];
        puVar11[8] = puVar13[8];
        puVar11[9] = uVar15;
        uVar15 = puVar13[0xb];
        puVar11[10] = puVar13[10];
        puVar11[0xb] = uVar15;
        *(int *)(puVar11 + 0xc) = (int)puVar13[0xc];
        memcpy((void *)((long)puVar11 + 100),(void *)((long)puVar13 + puVar13[2] + 100),puVar13[3]);
        uVar15 = puVar13[4];
        uVar20 = uVar20 + uVar7 + puVar13[2];
        *(undefined4 *)((long)puVar11 + 0x5c) = 1;
        *puVar11 = uVar20;
        uVar7 = (1L << ((byte)uVar15 & 0x3f)) / (long)puVar13[3];
        puVar11[2] = 0;
        puVar11[4] = uVar7;
        uVar15 = 1L << ((byte)puVar13[4] & 0x3f);
        if (uVar7 * puVar11[3] - uVar15 != 0) {
          puVar11[4] = uVar15;
          puVar11[3] = 1;
        }
        uVar6 = uVar6 + uVar15;
        *puVar11 = uVar20 - (uVar6 + lVar14);
        *(byte *)((long)puVar11 + 0x5a) =
             *(byte *)((long)puVar11 + 0x5a) & 0xfe | *(byte *)((long)puVar11 + 0x5a) & 1 ^ 1;
        puVar13[7] = (ulong)puVar11;
        goto LAB_00131409;
      }
      puVar11 = (ulong *)puVar13[7];
      lVar14 = lVar14 + uVar6;
      goto LAB_0013137d;
    case 5:
      if (uVar15 != 0) {
        lVar8 = FUN_0012af60(uVar15);
        if (*(long *)(lVar8 + 0x28) != 0) {
                    /* WARNING: Subroutine does not return */
          FUN_0011f960("../../gas/write.c",0xb80,"relax_segment");
        }
        lVar8 = thunk_FUN_0012c290(uVar15);
        uVar6 = uVar6 + lVar8;
      }
      puVar11 = (ulong *)puVar13[7];
      if (puVar11 == (ulong *)0x0) {
                    /* WARNING: Subroutine does not return */
        FUN_0011f960("../../gas/write.c",0xb84,"relax_segment");
      }
      uVar15 = *puVar11;
      if (uVar6 < uVar7 + puVar13[2]) {
        if (param_3 < 2) goto code_r0x00131269;
        uVar12 = dcgettext(0,"attempt to move .org backwards",5);
        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);
        *(undefined8 *)((long)puVar13 + 0x5c) = 2;
        puVar13[4] = 0;
        puVar13[2] = uVar15 - uVar20;
        puVar11 = (ulong *)puVar13[7];
        goto LAB_001311e7;
      }
      uVar6 = uVar6 - (uVar15 + lVar14);
LAB_00131409:
      if (uVar6 != 0) {
        iVar4 = *(int *)((long)puVar13 + 0x5c);
        goto LAB_00131375;
      }
      puVar13 = puVar11;
      uVar20 = *puVar11;
      goto LAB_00131000;
    case 8:
    case 9:
      if (uVar15 != 0) {
        lVar8 = thunk_FUN_0012c290(uVar15);
        lVar9 = FUN_0012af60(uVar15);
        if (((lVar9 == 0x1949f0) && (iVar4 = FUN_0012ac00(uVar15), iVar4 == 0)) &&
           (iVar4 = FUN_0012ac30(uVar15), iVar4 != 0)) {
          if (lVar8 < 0) {
            if (param_3 < 2) {
              puVar11 = (ulong *)puVar13[7];
              local_54 = 1;
            }
            else {
              uVar12 = dcgettext(0,".space, .nops or .fill with negative value, ignored",5);
              FUN_0011f5f0(puVar13[8],(int)puVar13[9],uVar12);
              puVar13[5] = 0;
              puVar11 = (ulong *)puVar13[7];
            }
            goto LAB_001311e7;
          }
          puVar11 = (ulong *)puVar13[7];
          uVar6 = ((puVar13[2] + uVar20) - *puVar11) + lVar8;
          goto LAB_00131409;
        }
        uVar12 = dcgettext(0,".space specifies non-absolute value",5);
        FUN_0011f7a0(puVar13[8],(int)puVar13[9],uVar12);
        puVar13[5] = 0;
      }
    case 1:
    case 7:
switchD_00131039_caseD_1:
      puVar11 = (ulong *)puVar13[7];
LAB_001311e7:
      if (puVar11 == (ulong *)0x0) goto LAB_001312f1;
LAB_001311f0:
      puVar13 = puVar11;
      uVar20 = *puVar11;
      goto LAB_00131000;
    case 0xb:
      uVar12 = FUN_0012b400(uVar15);
      uVar5 = FUN_00124c80(uVar12,(int)puVar13[0xc]);
      uVar6 = (ulong)uVar5 - puVar13[4];
      puVar13[4] = (ulong)uVar5;
      goto LAB_001312d8;
    case 0xc:
      iVar4 = FUN_00115810(puVar13);
      uVar6 = (ulong)iVar4;
LAB_001312d8:
      puVar11 = (ulong *)puVar13[7];
joined_r0x00131369:
      if (uVar6 != 0) {
        iVar4 = *(int *)((long)puVar13 + 0x5c);
LAB_00131375:
        lVar14 = lVar14 + uVar6;
        if (iVar4 == 0xb) {
LAB_001313e8:
          uVar18 = uVar18 + 0x10;
          bVar3 = true;
        }
        else {
LAB_0013137d:
          if (((iVar4 == 2) && ((uVar18 & 0x10) != 0)) && (lVar14 == 0)) goto LAB_001313e8;
          uVar18 = 0;
          bVar3 = true;
        }
        goto LAB_001311e7;
      }
      if (puVar11 != (ulong *)0x0) goto LAB_001311f0;
LAB_001312f1:
      if ((lVar14 == 0) && ((uVar18 & 0x10) == 0)) {
        uVar5 = uVar18 + 1;
        uVar17 = uVar18 & 0xfffffff0;
        uVar18 = 0;
        if (uVar17 != 0) {
          uVar18 = uVar5;
        }
      }
      else {
        uVar18 = 0;
      }
      if (!bVar3) {
        do {
          if (param_1[1] != *param_1) {
            param_1[1] = *param_1;
            local_54 = 1;
          }
          param_1 = (ulong *)param_1[7];
        } while (param_1 != (ulong *)0x0);
        return local_54;
      }
      local_48 = local_48 - 1;
      if (local_48 == 0) {
        uVar12 = *param_2;
        uVar10 = dcgettext(0,
                           "Infinite loop encountered whilst attempting to compute the addresses of symbols in section %s"
                           ,5);
                    /* WARNING: Subroutine does not return */
        FUN_0011f870(uVar10,uVar12);
      }
      break;
    case 0xd:
      iVar4 = FUN_00111570(puVar13);
      puVar11 = (ulong *)puVar13[7];
      uVar6 = (ulong)iVar4;
      goto joined_r0x00131369;
    }
  } while( true );
code_r0x00131269:
  local_54 = 1;
  puVar13 = puVar11;
  uVar20 = uVar15;
  goto LAB_00131000;
}

