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

void md_apply_fix(fixS *fixP,valueT *valP,segT seg)

{
  fragS *pfVar1;
  uint uVar2;
  bfd_reloc_code_real_type bVar3;
  fix *pfVar4;
  fragS *pfVar5;
  int iVar6;
  int iVar7;
  valueT val;
  addressT aVar8;
  addressT aVar9;
  uint uVar10;
  uint uVar11;
  symbolS *psVar12;
  alpha_operand *operand;
  segT paVar13;
  char *format;
  int iVar14;
  uint uVar15;
  undefined4 uVar16;
  char *pcVar17;
  uint uVar18;
  
  pfVar1 = fixP->fx_frag;
  uVar15 = fixP->fx_where;
  pcVar17 = pfVar1->fr_literal + uVar15;
  iVar14 = *(int *)((int)valP + 4);
  uVar2 = (uint)*valP;
  val = *valP;
  bVar3 = fixP->fx_r_type;
  if (bVar3 == BFD_RELOC_ALPHA_HINT) {
    if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) != (undefined1  [76])0x0
       ) {
      return;
    }
    if (fixP->fx_addsy != (symbolS *)0x0) {
      return;
    }
    uVar15 = bfd_getl32(pcVar17);
    uVar15 = uVar2 >> 2 & 0x3fff | uVar15 & 0xffffc000;
  }
  else {
    if (BFD_RELOC_ALPHA_HINT < bVar3) {
      if (bVar3 < BFD_RELOC_ALPHA_TPREL64) {
        if (BFD_RELOC_ALPHA_DTPREL64 < bVar3) {
LAB_0004dea3:
          if (fixP->fx_addsy == (symbolS *)0x0) {
            return;
          }
          S_SET_THREAD_LOCAL(fixP->fx_addsy);
          return;
        }
        if (bVar3 < BFD_RELOC_ALPHA_DTPMOD64) {
          if (BFD_RELOC_ALPHA_BOH < bVar3) goto LAB_0004dea3;
          if (bVar3 < BFD_RELOC_ALPHA_NOP) {
            return;
          }
        }
        else if (bVar3 == BFD_RELOC_ALPHA_GOTDTPREL16) goto LAB_0004dea3;
      }
      else if (BFD_RELOC_ALPHA_TPREL64 < bVar3) {
        if (bVar3 < BFD_RELOC_MIPS_JMP) goto LAB_0004dea3;
        if (bVar3 - BFD_RELOC_VTABLE_INHERIT < 2) {
          return;
        }
      }
      goto LAB_0004dd90;
    }
    if (BFD_RELOC_GPREL32 < bVar3) {
      if (bVar3 == BFD_RELOC_ALPHA_GPDISP_LO16) {
        uVar15 = (uint)(short)uVar2;
        *(undefined4 *)&fixP->fx_offset = 0;
        *(undefined4 *)((int)&fixP->fx_offset + 4) = 0;
        *(byte *)fixP = *(byte *)fixP | 0x20;
        uVar18 = (int)uVar15 >> 0x1f;
LAB_0004dcec:
        psVar12 = section_symbol(seg);
        fixP->fx_addsy = psVar12;
        number_to_chars_littleendian(pcVar17,CONCAT44(uVar18,uVar15),2);
        if ((fixP->fx_addsy != (symbolS *)0x0) ||
           ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=
            (undefined1  [76])0x0)) {
          return;
        }
        bVar3 = fixP->fx_r_type;
        pcVar17 = (char *)dcgettext(0,"type %d reloc done?\n",5);
        as_warn_where(fixP->fx_file,fixP->fx_line,pcVar17,bVar3);
        goto LAB_0004de31;
      }
      if (bVar3 < BFD_RELOC_ALPHA_GPDISP) {
        if (bVar3 == BFD_RELOC_ALPHA_GPDISP_HI16) {
          pfVar4 = fixP->fx_next;
          if (pfVar4 != (fix *)0x0) {
            pfVar5 = pfVar4->fx_frag;
            uVar18 = pfVar4->fx_where;
            aVar8 = pfVar5->fr_address;
            uVar10 = uVar18 + (int)pfVar5->fr_address;
            iVar6 = *(int *)((int)&pfVar5->fr_address + 4);
            aVar9 = pfVar1->fr_address;
            uVar11 = uVar10 - (int)pfVar1->fr_address;
            iVar7 = *(int *)((int)&pfVar1->fr_address + 4);
            *(uint *)&fixP->fx_offset = uVar11 - uVar15;
            *(uint *)((int)&fixP->fx_offset + 4) =
                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -
                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15);
          }
          fixP->fx_r_type = BFD_RELOC_ALPHA_GPDISP;
          uVar15 = (uint)(short)uVar2;
          uVar18 = (iVar14 - ((int)uVar15 >> 0x1f)) - (uint)(uVar2 < uVar15);
          uVar15 = uVar2 - uVar15 >> 0x10 | uVar18 * 0x10000;
          uVar18 = uVar18 >> 0x10;
          goto LAB_0004dcec;
        }
      }
      else if (BFD_RELOC_ALPHA_LITERAL < bVar3) {
        return;
      }
      goto LAB_0004dd90;
    }
    if (BFD_RELOC_LO10 < bVar3) {
      return;
    }
    if (bVar3 == BFD_RELOC_32) {
      if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=
          (undefined1  [76])0x0) {
        fixP->fx_r_type = BFD_RELOC_32_PCREL;
        return;
      }
      iVar14 = 4;
LAB_0004de57:
      if (fixP->fx_addsy != (symbolS *)0x0) {
        return;
      }
      number_to_chars_littleendian(pcVar17,*valP,iVar14);
      goto LAB_0004de31;
    }
    if (bVar3 < BFD_RELOC_26) {
      if (bVar3 == BFD_RELOC_64) {
        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=
            (undefined1  [76])0x0) {
          fixP->fx_r_type = BFD_RELOC_64_PCREL;
          return;
        }
        iVar14 = 8;
        goto LAB_0004de57;
      }
    }
    else {
      if (bVar3 == BFD_RELOC_16) {
        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=
            (undefined1  [76])0x0) {
          fixP->fx_r_type = BFD_RELOC_16_PCREL;
          return;
        }
        iVar14 = 2;
        goto LAB_0004de57;
      }
      if (bVar3 == BFD_RELOC_23_PCREL_S2) {
        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=
            (undefined1  [76])0x0) {
          return;
        }
        if (fixP->fx_addsy != (symbolS *)0x0) {
          return;
        }
        uVar15 = bfd_getl32(pcVar17);
        uVar15 = uVar2 >> 2 & 0x1fffff | uVar15 & 0xffe00000;
        goto LAB_0004de1f;
      }
    }
LAB_0004dd90:
    if (-1 < (int)bVar3) {
      uVar16 = bfd_get_reloc_code_name(bVar3);
      pcVar17 = (char *)dcgettext(0,"unhandled relocation type %s",5);
                    /* WARNING: Subroutine does not return */
      as_fatal(pcVar17,uVar16);
    }
    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-bVar3) {
                    /* WARNING: Subroutine does not return */
      as_abort("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix");
    }
    operand = (alpha_operand *)(PTR_alpha_operands_00077f74 + bVar3 * -0x10);
    if ((fixP->fx_addsy != (symbolS *)0x0) &&
       (paVar13 = S_GET_SEGMENT(fixP->fx_addsy),
       paVar13 != (segT)(PTR__bfd_std_section_00077fa0 + 0x180))) {
      format = (char *)dcgettext(0,"non-absolute expression in constant field",5);
      as_bad_where(fixP->fx_file,fixP->fx_line,format);
    }
    uVar15 = bfd_getl32(pcVar17);
    uVar15 = insert_operand(uVar15,operand,val,fixP->fx_file,fixP->fx_line);
  }
LAB_0004de1f:
  number_to_chars_littleendian(pcVar17,(ulonglong)uVar15,4);
LAB_0004de31:
  *(byte *)fixP = *(byte *)fixP | 0x20;
  return;
}



/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

void FUN_0004dbf0(byte *param_1,uint *param_2,undefined4 param_3)

{
  int iVar1;
  uint *puVar2;
  uint uVar3;
  uint uVar4;
  int iVar5;
  uint *puVar6;
  uint uVar7;
  uint uVar9;
  uint uVar10;
  uint uVar11;
  uint uVar12;
  undefined *puVar13;
  undefined4 uVar14;
  uint uVar15;
  undefined4 uVar16;
  uint uVar17;
  uint uVar8;
  
  puVar2 = *(uint **)(param_1 + 4);
  uVar15 = *(uint *)(param_1 + 8);
  iVar1 = (int)puVar2 + uVar15 + 0x4c;
  uVar17 = param_2[1];
  uVar3 = *param_2;
  uVar4 = *(uint *)(param_1 + 0x30);
  if (uVar4 == 0xa9) {
    if ((*param_1 & 1) != 0) {
      return;
    }
    if (*(int *)(param_1 + 0xc) != 0) {
      return;
    }
    uVar15 = bfd_getl32(iVar1);
    uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;
  }
  else {
    if (0xa9 < uVar4) {
      if (uVar4 < 0xbc) {
        if (0xb7 < uVar4) {
LAB_0004dea3:
          if (*(int *)(param_1 + 0xc) == 0) {
            return;
          }
          FUN_000409b0(*(int *)(param_1 + 0xc));
          return;
        }
        if (uVar4 < 0xb5) {
          if (0xb2 < uVar4) goto LAB_0004dea3;
          if (uVar4 < 0xaf) {
            return;
          }
        }
        else if (uVar4 == 0xb6) goto LAB_0004dea3;
      }
      else if (0xbc < uVar4) {
        if (uVar4 < 0xc0) goto LAB_0004dea3;
        if (uVar4 - 0x5a3 < 2) {
          return;
        }
      }
      goto LAB_0004dd90;
    }
    if (0x46 < uVar4) {
      if (uVar4 == 0xa4) {
        uVar15 = (uint)(short)uVar3;
        param_1[0x14] = 0;
        param_1[0x15] = 0;
        param_1[0x16] = 0;
        param_1[0x17] = 0;
        param_1[0x18] = 0;
        param_1[0x19] = 0;
        param_1[0x1a] = 0;
        param_1[0x1b] = 0;
        *param_1 = *param_1 | 0x20;
        uVar17 = (int)uVar15 >> 0x1f;
LAB_0004dcec:
        uVar14 = FUN_0003c2e0(param_3);
        *(undefined4 *)(param_1 + 0xc) = uVar14;
        FUN_000469c0(iVar1,uVar15,uVar17,2);
        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {
          return;
        }
        uVar14 = *(undefined4 *)(param_1 + 0x30);
        uVar16 = dcgettext(0,"type %d reloc done?\n",5);
        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);
        goto LAB_0004de31;
      }
      if (uVar4 < 0xa5) {
        if (uVar4 == 0xa3) {
          iVar5 = *(int *)(param_1 + 0x28);
          if (iVar5 != 0) {
            puVar6 = *(uint **)(iVar5 + 4);
            uVar4 = *(uint *)(iVar5 + 8);
            uVar7 = *puVar6;
            uVar8 = *puVar6;
            uVar9 = puVar6[1];
            uVar10 = *puVar2;
            uVar12 = (uVar4 + uVar8) - *puVar2;
            uVar11 = puVar2[1];
            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;
            *(uint *)(param_1 + 0x18) =
                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -
                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)
            ;
          }
          param_1[0x30] = 0xa5;
          param_1[0x31] = 0;
          param_1[0x32] = 0;
          param_1[0x33] = 0;
          uVar15 = (uint)(short)uVar3;
          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);
          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;
          uVar17 = uVar17 >> 0x10;
          goto LAB_0004dcec;
        }
      }
      else if (0xa6 < uVar4) {
        return;
      }
      goto LAB_0004dd90;
    }
    if (0x44 < uVar4) {
      return;
    }
    if (uVar4 == 2) {
      if ((*param_1 & 1) != 0) {
        param_1[0x30] = 9;
        param_1[0x31] = 0;
        param_1[0x32] = 0;
        param_1[0x33] = 0;
        return;
      }
      uVar14 = 4;
LAB_0004de57:
      if (*(int *)(param_1 + 0xc) != 0) {
        return;
      }
      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);
      goto LAB_0004de31;
    }
    if (uVar4 < 3) {
      if (uVar4 == 1) {
        if ((*param_1 & 1) != 0) {
          param_1[0x30] = 8;
          param_1[0x31] = 0;
          param_1[0x32] = 0;
          param_1[0x33] = 0;
          return;
        }
        uVar14 = 8;
        goto LAB_0004de57;
      }
    }
    else {
      if (uVar4 == 5) {
        if ((*param_1 & 1) != 0) {
          param_1[0x30] = 0xb;
          param_1[0x31] = 0;
          param_1[0x32] = 0;
          param_1[0x33] = 0;
          return;
        }
        uVar14 = 2;
        goto LAB_0004de57;
      }
      if (uVar4 == 0x42) {
        if ((*param_1 & 1) != 0) {
          return;
        }
        if (*(int *)(param_1 + 0xc) != 0) {
          return;
        }
        uVar15 = bfd_getl32(iVar1);
        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;
        goto LAB_0004de1f;
      }
    }
LAB_0004dd90:
    if (-1 < (int)uVar4) {
      uVar14 = bfd_get_reloc_code_name(uVar4);
      uVar16 = dcgettext(0,"unhandled relocation type %s",5);
                    /* WARNING: Subroutine does not return */
      FUN_000316c0(uVar16,uVar14);
    }
    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {
                    /* WARNING: Subroutine does not return */
      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);
    }
    if ((*(int *)(param_1 + 0xc) != 0) &&
       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),
       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {
      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);
      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);
    }
    bfd_getl32(iVar1);
    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),
                          *(undefined4 *)(param_1 + 0x40));
  }
LAB_0004de1f:
  FUN_000469c0(iVar1,uVar15,0,4);
LAB_0004de31:
  *param_1 = *param_1 | 0x20;
  return;
}


PUSH EBP
PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x00016070
ADD EBX,0x2a407
SUB ESP,0x1c
MOV ESI,dword ptr [ESP + 0x30]
MOV EDI,dword ptr [ESI + 0x4]
MOV ECX,dword ptr [ESI + 0x8]
LEA EAX,[EDI + ECX*0x1 + 0x4c]
MOV dword ptr [ESP + 0x4],EAX
MOV EAX,dword ptr [ESP + 0x34]
MOV EDX,dword ptr [EAX + 0x4]
MOV EAX,dword ptr [EAX]
MOV dword ptr [ESP + 0x8],EAX
MOV EAX,dword ptr [ESI + 0x30]
MOV dword ptr [ESP + 0xc],EDX
CMP EAX,0xa9
JZ 0x0004df00
JA 0x0004dd50
CMP EAX,0x46
JA 0x0004dc80
CMP EAX,0x45
JNC 0x0004dc74
CMP EAX,0x2
JZ 0x0004df48
JBE 0x0004de40
CMP EAX,0x5
JZ 0x0004df60
CMP EAX,0x42
JNZ 0x0004dd90
TEST byte ptr [ESI],0x1
JNZ 0x0004dc74
MOV EBP,dword ptr [ESI + 0xc]
TEST EBP,EBP
JZ 0x0004dfba
ADD ESP,0x1c
POP EBX
POP ESI
POP EDI
POP EBP
RET
CMP EAX,0xa4
JZ 0x0004df78
JA 0x0004de80
CMP EAX,0xa3
JNZ 0x0004dd90
MOV EAX,dword ptr [ESI + 0x28]
TEST EAX,EAX
JZ 0x0004dcc6
MOV EBP,dword ptr [EAX + 0x4]
MOV EAX,dword ptr [EAX + 0x8]
CDQ
ADD EAX,dword ptr [EBP]
ADC EDX,dword ptr [EBP + 0x4]
SUB EAX,dword ptr [EDI]
SBB EDX,dword ptr [EDI + 0x4]
MOV EDI,EAX
MOV EAX,ECX
MOV EBP,EDX
CDQ
SUB EDI,ECX
SBB EBP,EDX
MOV dword ptr [ESI + 0x14],EDI
MOV dword ptr [ESI + 0x18],EBP
MOV EDI,dword ptr [ESP + 0x8]
MOV EBP,dword ptr [ESP + 0xc]
MOV dword ptr [ESI + 0x30],0xa5
MOVSX EAX,DI
CDQ
SUB EDI,EAX
SBB EBP,EDX
MOV EAX,EDI
MOV EDX,EBP
SHRD EAX,EBP,0x10
SHR EDX,0x10
MOV EDI,EAX
MOV EBP,EDX
SUB ESP,0xc
PUSH dword ptr [ESP + 0x44]
CALL 0x0003c2e0
MOV dword ptr [ESI + 0xc],EAX
PUSH 0x2
PUSH EBP
PUSH EDI
PUSH dword ptr [ESP + 0x20]
CALL 0x000469c0
MOV EAX,dword ptr [ESI + 0xc]
ADD ESP,0x20
TEST EAX,EAX
JNZ 0x0004dc74
TEST byte ptr [ESI],0x1
JNZ 0x0004dc74
SUB ESP,0x4
LEA EAX,[EBX + 0xfffe4e54]
MOV EDI,dword ptr [ESI + 0x30]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141e0
PUSH EDI
PUSH EAX
PUSH dword ptr [ESI + 0x40]
PUSH dword ptr [ESI + 0x3c]
CALL 0x000315b0
ADD ESP,0x20
JMP 0x0004de31
CMP EAX,0xbb
JA 0x0004dec0
CMP EAX,0xb8
JNC 0x0004dea3
CMP EAX,0xb4
JA 0x0004de98
CMP EAX,0xb3
JNC 0x0004dea3
CMP EAX,0xae
JBE 0x0004dc74
LEA ESI,[ESI]
NOP
TEST EAX,EAX
JNS 0x0004e001
MOV EDX,dword ptr [EBX + 0xffffffcc]
NEG EAX
CMP EAX,dword ptr [EDX]
JGE 0x0004dfe8
SHL EAX,0x4
ADD EAX,dword ptr [EBX + 0xffffff74]
MOV EDI,EAX
MOV EAX,dword ptr [ESI + 0xc]
TEST EAX,EAX
JZ 0x0004ddfb
SUB ESP,0xc
PUSH EAX
CALL 0x0003e1d0
MOV EDX,dword ptr [EBX + 0xffffffa0]
ADD ESP,0x10
ADD EDX,0x180
CMP EAX,EDX
JZ 0x0004ddfb
SUB ESP,0x4
LEA EAX,[EBX + 0xfffe57dc]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141e0
ADD ESP,0xc
PUSH EAX
PUSH dword ptr [ESI + 0x40]
PUSH dword ptr [ESI + 0x3c]
CALL 0x00031670
ADD ESP,0x10
SUB ESP,0xc
PUSH dword ptr [ESP + 0x10]
CALL 0x00014420
PUSH dword ptr [ESI + 0x40]
MOV EDX,EDI
PUSH dword ptr [ESI + 0x3c]
PUSH dword ptr [ESP + 0x24]
PUSH dword ptr [ESP + 0x24]
CALL 0x00047ad0
ADD ESP,0x20
XOR EDX,EDX
PUSH 0x4
PUSH EDX
PUSH EAX
PUSH dword ptr [ESP + 0x10]
CALL 0x000469c0
ADD ESP,0x10
OR byte ptr [ESI],0x20
ADD ESP,0x1c
POP EBX
POP ESI
POP EDI
POP EBP
RET
CMP EAX,0x1
JNZ 0x0004dd90
TEST byte ptr [ESI],0x1
JNZ 0x0004def0
MOV EAX,0x8
MOV EDX,dword ptr [ESI + 0xc]
TEST EDX,EDX
JNZ 0x0004dc74
PUSH EAX
PUSH dword ptr [ESP + 0x10]
PUSH dword ptr [ESP + 0x10]
PUSH dword ptr [ESP + 0x10]
CALL 0x000469c0
ADD ESP,0x10
JMP 0x0004de31
CMP EAX,0xa7
JC 0x0004dd90
ADD ESP,0x1c
POP EBX
POP ESI
POP EDI
POP EBP
RET
CMP EAX,0xb6
JNZ 0x0004dd90
MOV EAX,dword ptr [ESI + 0xc]
TEST EAX,EAX
JZ 0x0004dc74
SUB ESP,0xc
PUSH EAX
CALL 0x000409b0
ADD ESP,0x10
JMP 0x0004dc74
CMP EAX,0xbd
JC 0x0004dd90
CMP EAX,0xbf
JBE 0x0004dea3
LEA EDX,[EAX + 0xfffffa5d]
CMP EDX,0x1
JA 0x0004dd90
ADD ESP,0x1c
POP EBX
POP ESI
POP EDI
POP EBP
RET
MOV dword ptr [ESI + 0x30],0x8
JMP 0x0004dc74
TEST byte ptr [ESI],0x1
JNZ 0x0004dc74
MOV EBP,dword ptr [ESI + 0xc]
TEST EBP,EBP
JNZ 0x0004dc74
SUB ESP,0xc
PUSH dword ptr [ESP + 0x10]
CALL 0x00014420
MOV EDX,dword ptr [ESP + 0x1c]
AND EAX,0xffffc000
MOV ECX,EAX
MOV EAX,dword ptr [ESP + 0x18]
ADD ESP,0x10
SHRD EAX,EDX,0x2
AND EAX,0x3fff
OR EAX,ECX
JMP 0x0004de1f
TEST byte ptr [ESI],0x1
JZ 0x0004dfa0
MOV dword ptr [ESI + 0x30],0x9
JMP 0x0004dc74
TEST byte ptr [ESI],0x1
JZ 0x0004dfb0
MOV dword ptr [ESI + 0x30],0xb
JMP 0x0004dc74
MOVSX EDI,word ptr [ESP + 0x8]
MOV dword ptr [ESI + 0x14],0x0
MOV dword ptr [ESI + 0x18],0x0
MOV EBP,EDI
OR byte ptr [ESI],0x20
SAR EBP,0x1f
JMP 0x0004dcec
MOV EAX,0x4
JMP 0x0004de57
MOV EAX,0x2
JMP 0x0004de57
SUB ESP,0xc
PUSH dword ptr [ESP + 0x10]
CALL 0x00014420
MOV EDX,dword ptr [ESP + 0x1c]
AND EAX,0xffe00000
MOV ECX,EAX
MOV EAX,dword ptr [ESP + 0x18]
ADD ESP,0x10
SHRD EAX,EDX,0x2
AND EAX,0x1fffff
OR EAX,ECX
JMP 0x0004de1f
LEA EAX,[EBX + 0xfffe5e48]
PUSH ECX
PUSH EAX
LEA EAX,[EBX + 0xfffe4c5e]
PUSH 0x1739
PUSH EAX
CALL 0x00031740
SUB ESP,0xc
PUSH EAX
CALL 0x00014040
ADD ESP,0xc
MOV ESI,EAX
LEA EAX,[EBX + 0xfffe4e37]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141e0
POP EDI
POP EBP
PUSH ESI
PUSH EAX
CALL 0x000316c0
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nvoid FUN_0004dbf0(byte *param_1,uint *param_2,undefined4 param_3)\n\n{\n  int iVar1;\n  uint *puVar2;\n  uint uVar3;\n  uint uVar4;\n  int iVar5;\n  uint *puVar6;\n  uint uVar7;\n  uint uVar9;\n  uint uVar10;\n  uint uVar11;\n  uint uVar12;\n  undefined *puVar13;\n  undefined4 uVar14;\n  uint uVar15;\n  undefined4 uVar16;\n  uint uVar17;\n  uint uVar8;\n  \n  puVar2 = *(uint **)(param_1 + 4);\n  uVar15 = *(uint *)(param_1 + 8);\n  iVar1 = (int)puVar2 + uVar15 + 0x4c;\n  uVar17 = param_2[1];\n  uVar3 = *param_2;\n  uVar4 = *(uint *)(param_1 + 0x30);\n  if (uVar4 == 0xa9) {\n    if ((*param_1 & 1) != 0) {\n      return;\n    }\n    if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }\n    uVar15 = bfd_getl32(iVar1);\n    uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }\n  else {\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    /* WARNING: Subroutine does not return */\n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }\nLAB_0004de1f:\n  FUN_000469c0(iVar1,uVar15,0,4);\nLAB_0004de31:\n  *param_1 = *param_1 | 0x20;\n  return;\n}\n\n" comment (function_definition "void FUN_0004dbf0(byte *param_1,uint *param_2,undefined4 param_3)\n\n{\n  int iVar1;\n  uint *puVar2;\n  uint uVar3;\n  uint uVar4;\n  int iVar5;\n  uint *puVar6;\n  uint uVar7;\n  uint uVar9;\n  uint uVar10;\n  uint uVar11;\n  uint uVar12;\n  undefined *puVar13;\n  undefined4 uVar14;\n  uint uVar15;\n  undefined4 uVar16;\n  uint uVar17;\n  uint uVar8;\n  \n  puVar2 = *(uint **)(param_1 + 4);\n  uVar15 = *(uint *)(param_1 + 8);\n  iVar1 = (int)puVar2 + uVar15 + 0x4c;\n  uVar17 = param_2[1];\n  uVar3 = *param_2;\n  uVar4 = *(uint *)(param_1 + 0x30);\n  if (uVar4 == 0xa9) {\n    if ((*param_1 & 1) != 0) {\n      return;\n    }\n    if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }\n    uVar15 = bfd_getl32(iVar1);\n    uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }\n  else {\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    /* WARNING: Subroutine does not return */\n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }\nLAB_0004de1f:\n  FUN_000469c0(iVar1,uVar15,0,4);\nLAB_0004de31:\n  *param_1 = *param_1 | 0x20;\n  return;\n}" primitive_type (function_declarator "FUN_0004dbf0(byte *param_1,uint *param_2,undefined4 param_3)" identifier (parameter_list "(byte *param_1,uint *param_2,undefined4 param_3)" ( (parameter_declaration "byte *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "uint *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined4 param_3" type_identifier identifier) ))) (compound_statement "{\n  int iVar1;\n  uint *puVar2;\n  uint uVar3;\n  uint uVar4;\n  int iVar5;\n  uint *puVar6;\n  uint uVar7;\n  uint uVar9;\n  uint uVar10;\n  uint uVar11;\n  uint uVar12;\n  undefined *puVar13;\n  undefined4 uVar14;\n  uint uVar15;\n  undefined4 uVar16;\n  uint uVar17;\n  uint uVar8;\n  \n  puVar2 = *(uint **)(param_1 + 4);\n  uVar15 = *(uint *)(param_1 + 8);\n  iVar1 = (int)puVar2 + uVar15 + 0x4c;\n  uVar17 = param_2[1];\n  uVar3 = *param_2;\n  uVar4 = *(uint *)(param_1 + 0x30);\n  if (uVar4 == 0xa9) {\n    if ((*param_1 & 1) != 0) {\n      return;\n    }\n    if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }\n    uVar15 = bfd_getl32(iVar1);\n    uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }\n  else {\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    /* WARNING: Subroutine does not return */\n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }\nLAB_0004de1f:\n  FUN_000469c0(iVar1,uVar15,0,4);\nLAB_0004de31:\n  *param_1 = *param_1 | 0x20;\n  return;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "uint *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "uint uVar3;" type_identifier identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "uint *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "uint uVar11;" type_identifier identifier ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "undefined *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "undefined4 uVar14;" type_identifier identifier ;) (declaration "uint uVar15;" type_identifier identifier ;) (declaration "undefined4 uVar16;" type_identifier identifier ;) (declaration "uint uVar17;" type_identifier identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (expression_statement "puVar2 = *(uint **)(param_1 + 4);" (assignment_expression "puVar2 = *(uint **)(param_1 + 4)" identifier = (pointer_expression "*(uint **)(param_1 + 4)" * (cast_expression "(uint **)(param_1 + 4)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 4)" ( (binary_expression "param_1 + 4" identifier + number_literal) ))))) ;) (expression_statement "uVar15 = *(uint *)(param_1 + 8);" (assignment_expression "uVar15 = *(uint *)(param_1 + 8)" identifier = (pointer_expression "*(uint *)(param_1 + 8)" * (cast_expression "(uint *)(param_1 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = (int)puVar2 + uVar15 + 0x4c;" (assignment_expression "iVar1 = (int)puVar2 + uVar15 + 0x4c" identifier = (binary_expression "(int)puVar2 + uVar15 + 0x4c" (binary_expression "(int)puVar2 + uVar15" (cast_expression "(int)puVar2" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal)) ;) (expression_statement "uVar17 = param_2[1];" (assignment_expression "uVar17 = param_2[1]" identifier = (subscript_expression "param_2[1]" identifier [ number_literal ])) ;) (expression_statement "uVar3 = *param_2;" (assignment_expression "uVar3 = *param_2" identifier = (pointer_expression "*param_2" * identifier)) ;) (expression_statement "uVar4 = *(uint *)(param_1 + 0x30);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x30)" identifier = (pointer_expression "*(uint *)(param_1 + 0x30)" * (cast_expression "(uint *)(param_1 + 0x30)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) ))))) ;) (if_statement "if (uVar4 == 0xa9) {\n    if ((*param_1 & 1) != 0) {\n      return;\n    }\n    if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }\n    uVar15 = bfd_getl32(iVar1);\n    uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }\n  else {\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    /* WARNING: Subroutine does not return */\n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }" if (parenthesized_expression "(uVar4 == 0xa9)" ( (binary_expression "uVar4 == 0xa9" identifier == number_literal) )) (compound_statement "{\n    if ((*param_1 & 1) != 0) {\n      return;\n    }\n    if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }\n    uVar15 = bfd_getl32(iVar1);\n    uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }" { (if_statement "if ((*param_1 & 1) != 0) {\n      return;\n    }" if (parenthesized_expression "((*param_1 & 1) != 0)" ( (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" ( (binary_expression "*param_1 & 1" (pointer_expression "*param_1" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (if_statement "if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0xc) != 0)" ( (binary_expression "*(int *)(param_1 + 0xc) != 0" (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "uVar15 = bfd_getl32(iVar1);" (assignment_expression "uVar15 = bfd_getl32(iVar1)" identifier = (call_expression "bfd_getl32(iVar1)" identifier (argument_list "(iVar1)" ( identifier )))) ;) (expression_statement "uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;" (assignment_expression "uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000" identifier = (binary_expression "uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000" (binary_expression "uVar3 >> 2 & 0x3fff" (binary_expression "uVar3 >> 2" identifier >> number_literal) & number_literal) | (binary_expression "uVar15 & 0xffffc000" identifier & number_literal))) ;) }) (else_clause "else {\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    /* WARNING: Subroutine does not return */\n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }" else (compound_statement "{\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    /* WARNING: Subroutine does not return */\n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }" { (if_statement "if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }" if (parenthesized_expression "(0xa9 < uVar4)" ( (binary_expression "0xa9 < uVar4" number_literal < identifier) )) (compound_statement "{\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }" { (if_statement "if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }" if (parenthesized_expression "(uVar4 < 0xbc)" ( (binary_expression "uVar4 < 0xbc" identifier < number_literal) )) (compound_statement "{\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }" { (if_statement "if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }" if (parenthesized_expression "(0xb7 < uVar4)" ( (binary_expression "0xb7 < uVar4" number_literal < identifier) )) (compound_statement "{\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }" { (labeled_statement "LAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }" statement_identifier : (if_statement "if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }" if (parenthesized_expression "(*(int *)(param_1 + 0xc) == 0)" ( (binary_expression "*(int *)(param_1 + 0xc) == 0" (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n            return;\n          }" { (return_statement "return;" return ;) }))) (expression_statement "FUN_000409b0(*(int *)(param_1 + 0xc));" (call_expression "FUN_000409b0(*(int *)(param_1 + 0xc))" identifier (argument_list "(*(int *)(param_1 + 0xc))" ( (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) ))) ;) (return_statement "return;" return ;) })) (if_statement "if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;" if (parenthesized_expression "(uVar4 < 0xb5)" ( (binary_expression "uVar4 < 0xb5" identifier < number_literal) )) (compound_statement "{\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }" { (if_statement "if (0xb2 < uVar4) goto LAB_0004dea3;" if (parenthesized_expression "(0xb2 < uVar4)" ( (binary_expression "0xb2 < uVar4" number_literal < identifier) )) (goto_statement "goto LAB_0004dea3;" goto statement_identifier ;)) (if_statement "if (uVar4 < 0xaf) {\n            return;\n          }" if (parenthesized_expression "(uVar4 < 0xaf)" ( (binary_expression "uVar4 < 0xaf" identifier < number_literal) )) (compound_statement "{\n            return;\n          }" { (return_statement "return;" return ;) })) }) (else_clause "else if (uVar4 == 0xb6) goto LAB_0004dea3;" else (if_statement "if (uVar4 == 0xb6) goto LAB_0004dea3;" if (parenthesized_expression "(uVar4 == 0xb6)" ( (binary_expression "uVar4 == 0xb6" identifier == number_literal) )) (goto_statement "goto LAB_0004dea3;" goto statement_identifier ;)))) }) (else_clause "else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }" else (if_statement "if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }" if (parenthesized_expression "(0xbc < uVar4)" ( (binary_expression "0xbc < uVar4" number_literal < identifier) )) (compound_statement "{\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }" { (if_statement "if (uVar4 < 0xc0) goto LAB_0004dea3;" if (parenthesized_expression "(uVar4 < 0xc0)" ( (binary_expression "uVar4 < 0xc0" identifier < number_literal) )) (goto_statement "goto LAB_0004dea3;" goto statement_identifier ;)) (if_statement "if (uVar4 - 0x5a3 < 2) {\n          return;\n        }" if (parenthesized_expression "(uVar4 - 0x5a3 < 2)" ( (binary_expression "uVar4 - 0x5a3 < 2" (binary_expression "uVar4 - 0x5a3" identifier - number_literal) < number_literal) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) })))) (goto_statement "goto LAB_0004dd90;" goto statement_identifier ;) })) (if_statement "if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }" if (parenthesized_expression "(0x46 < uVar4)" ( (binary_expression "0x46 < uVar4" number_literal < identifier) )) (compound_statement "{\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }" { (if_statement "if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }" if (parenthesized_expression "(uVar4 == 0xa4)" ( (binary_expression "uVar4 == 0xa4" identifier == number_literal) )) (compound_statement "{\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }" { (expression_statement "uVar15 = (uint)(short)uVar3;" (assignment_expression "uVar15 = (uint)(short)uVar3" identifier = (cast_expression "(uint)(short)uVar3" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(short)uVar3" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) identifier))) ;) (expression_statement "param_1[0x14] = 0;" (assignment_expression "param_1[0x14] = 0" (subscript_expression "param_1[0x14]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x15] = 0;" (assignment_expression "param_1[0x15] = 0" (subscript_expression "param_1[0x15]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x16] = 0;" (assignment_expression "param_1[0x16] = 0" (subscript_expression "param_1[0x16]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x17] = 0;" (assignment_expression "param_1[0x17] = 0" (subscript_expression "param_1[0x17]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x18] = 0;" (assignment_expression "param_1[0x18] = 0" (subscript_expression "param_1[0x18]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x19] = 0;" (assignment_expression "param_1[0x19] = 0" (subscript_expression "param_1[0x19]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x1a] = 0;" (assignment_expression "param_1[0x1a] = 0" (subscript_expression "param_1[0x1a]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x1b] = 0;" (assignment_expression "param_1[0x1b] = 0" (subscript_expression "param_1[0x1b]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*param_1 = *param_1 | 0x20;" (assignment_expression "*param_1 = *param_1 | 0x20" (pointer_expression "*param_1" * identifier) = (binary_expression "*param_1 | 0x20" (pointer_expression "*param_1" * identifier) | number_literal)) ;) (expression_statement "uVar17 = (int)uVar15 >> 0x1f;" (assignment_expression "uVar17 = (int)uVar15 >> 0x1f" identifier = (binary_expression "(int)uVar15 >> 0x1f" (cast_expression "(int)uVar15" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (labeled_statement "LAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);" statement_identifier : (expression_statement "uVar14 = FUN_0003c2e0(param_3);" (assignment_expression "uVar14 = FUN_0003c2e0(param_3)" identifier = (call_expression "FUN_0003c2e0(param_3)" identifier (argument_list "(param_3)" ( identifier )))) ;)) (expression_statement "*(undefined4 *)(param_1 + 0xc) = uVar14;" (assignment_expression "*(undefined4 *)(param_1 + 0xc) = uVar14" (pointer_expression "*(undefined4 *)(param_1 + 0xc)" * (cast_expression "(undefined4 *)(param_1 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "FUN_000469c0(iVar1,uVar15,uVar17,2);" (call_expression "FUN_000469c0(iVar1,uVar15,uVar17,2)" identifier (argument_list "(iVar1,uVar15,uVar17,2)" ( identifier , identifier , identifier , number_literal ))) ;) (if_statement "if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }" if (parenthesized_expression "((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0))" ( (binary_expression "(*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)" (parenthesized_expression "(*(int *)(param_1 + 0xc) != 0)" ( (binary_expression "*(int *)(param_1 + 0xc) != 0" (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) != number_literal) )) || (parenthesized_expression "((*param_1 & 1) != 0)" ( (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" ( (binary_expression "*param_1 & 1" (pointer_expression "*param_1" * identifier) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) (expression_statement "uVar14 = *(undefined4 *)(param_1 + 0x30);" (assignment_expression "uVar14 = *(undefined4 *)(param_1 + 0x30)" identifier = (pointer_expression "*(undefined4 *)(param_1 + 0x30)" * (cast_expression "(undefined4 *)(param_1 + 0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "uVar16 = dcgettext(0,"type %d reloc done?\n",5);" (assignment_expression "uVar16 = dcgettext(0,"type %d reloc done?\n",5)" identifier = (call_expression "dcgettext(0,"type %d reloc done?\n",5)" identifier (argument_list "(0,"type %d reloc done?\n",5)" ( number_literal , (string_literal ""type %d reloc done?\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);" (call_expression "FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14)" identifier (argument_list "(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14)" ( (pointer_expression "*(undefined4 *)(param_1 + 0x3c)" * (cast_expression "(undefined4 *)(param_1 + 0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3c)" ( (binary_expression "param_1 + 0x3c" identifier + number_literal) )))) , (pointer_expression "*(undefined4 *)(param_1 + 0x40)" * (cast_expression "(undefined4 *)(param_1 + 0x40)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) )))) , identifier , identifier ))) ;) (goto_statement "goto LAB_0004de31;" goto statement_identifier ;) })) (if_statement "if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }" if (parenthesized_expression "(uVar4 < 0xa5)" ( (binary_expression "uVar4 < 0xa5" identifier < number_literal) )) (compound_statement "{\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }" { (if_statement "if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }" if (parenthesized_expression "(uVar4 == 0xa3)" ( (binary_expression "uVar4 == 0xa3" identifier == number_literal) )) (compound_statement "{\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }" { (expression_statement "iVar5 = *(int *)(param_1 + 0x28);" (assignment_expression "iVar5 = *(int *)(param_1 + 0x28)" identifier = (pointer_expression "*(int *)(param_1 + 0x28)" * (cast_expression "(int *)(param_1 + 0x28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }" if (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) )) (compound_statement "{\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }" { (expression_statement "puVar6 = *(uint **)(iVar5 + 4);" (assignment_expression "puVar6 = *(uint **)(iVar5 + 4)" identifier = (pointer_expression "*(uint **)(iVar5 + 4)" * (cast_expression "(uint **)(iVar5 + 4)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar5 + 4)" ( (binary_expression "iVar5 + 4" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = *(uint *)(iVar5 + 8);" (assignment_expression "uVar4 = *(uint *)(iVar5 + 8)" identifier = (pointer_expression "*(uint *)(iVar5 + 8)" * (cast_expression "(uint *)(iVar5 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar5 + 8)" ( (binary_expression "iVar5 + 8" identifier + number_literal) ))))) ;) (expression_statement "uVar7 = *puVar6;" (assignment_expression "uVar7 = *puVar6" identifier = (pointer_expression "*puVar6" * identifier)) ;) (expression_statement "uVar8 = *puVar6;" (assignment_expression "uVar8 = *puVar6" identifier = (pointer_expression "*puVar6" * identifier)) ;) (expression_statement "uVar9 = puVar6[1];" (assignment_expression "uVar9 = puVar6[1]" identifier = (subscript_expression "puVar6[1]" identifier [ number_literal ])) ;) (expression_statement "uVar10 = *puVar2;" (assignment_expression "uVar10 = *puVar2" identifier = (pointer_expression "*puVar2" * identifier)) ;) (expression_statement "uVar12 = (uVar4 + uVar8) - *puVar2;" (assignment_expression "uVar12 = (uVar4 + uVar8) - *puVar2" identifier = (binary_expression "(uVar4 + uVar8) - *puVar2" (parenthesized_expression "(uVar4 + uVar8)" ( (binary_expression "uVar4 + uVar8" identifier + identifier) )) - (pointer_expression "*puVar2" * identifier))) ;) (expression_statement "uVar11 = puVar2[1];" (assignment_expression "uVar11 = puVar2[1]" identifier = (subscript_expression "puVar2[1]" identifier [ number_literal ])) ;) (expression_statement "*(uint *)(param_1 + 0x14) = uVar12 - uVar15;" (assignment_expression "*(uint *)(param_1 + 0x14) = uVar12 - uVar15" (pointer_expression "*(uint *)(param_1 + 0x14)" * (cast_expression "(uint *)(param_1 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) )))) = (binary_expression "uVar12 - uVar15" identifier - identifier)) ;) (expression_statement "*(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;" (assignment_expression "*(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)" (pointer_expression "*(uint *)(param_1 + 0x18)" * (cast_expression "(uint *)(param_1 + 0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18)" ( (binary_expression "param_1 + 0x18" identifier + number_literal) )))) = (binary_expression "((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)" (parenthesized_expression "((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f))" ( (binary_expression "(((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)" (parenthesized_expression "(((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10))" ( (binary_expression "((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)" (parenthesized_expression "((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11)" ( (binary_expression "(((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11" (parenthesized_expression "(((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7))" ( (binary_expression "((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)" (binary_expression "((int)uVar4 >> 0x1f) + uVar9" (parenthesized_expression "((int)uVar4 >> 0x1f)" ( (binary_expression "(int)uVar4 >> 0x1f" (cast_expression "(int)uVar4" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) + identifier) + (cast_expression "(uint)CARRY4(uVar4,uVar7)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar4,uVar7)" identifier (argument_list "(uVar4,uVar7)" ( identifier , identifier ))))) )) - identifier) )) - (call_expression "(uint)(uVar4 + uVar8 < uVar10)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 + uVar8 < uVar10)" ( (binary_expression "uVar4 + uVar8 < uVar10" (binary_expression "uVar4 + uVar8" identifier + identifier) < identifier) )))) )) - (parenthesized_expression "((int)uVar15 >> 0x1f)" ( (binary_expression "(int)uVar15 >> 0x1f" (cast_expression "(int)uVar15" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) ))) )) - (call_expression "(uint)(uVar12 < uVar15)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar12 < uVar15)" ( (binary_expression "uVar12 < uVar15" identifier < identifier) ))))) ;) })) (expression_statement "param_1[0x30] = 0xa5;" (assignment_expression "param_1[0x30] = 0xa5" (subscript_expression "param_1[0x30]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x31] = 0;" (assignment_expression "param_1[0x31] = 0" (subscript_expression "param_1[0x31]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x32] = 0;" (assignment_expression "param_1[0x32] = 0" (subscript_expression "param_1[0x32]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x33] = 0;" (assignment_expression "param_1[0x33] = 0" (subscript_expression "param_1[0x33]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "uVar15 = (uint)(short)uVar3;" (assignment_expression "uVar15 = (uint)(short)uVar3" identifier = (cast_expression "(uint)(short)uVar3" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(short)uVar3" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) identifier))) ;) (expression_statement "uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);" (assignment_expression "uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15)" identifier = (binary_expression "(uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15)" (parenthesized_expression "(uVar17 - ((int)uVar15 >> 0x1f))" ( (binary_expression "uVar17 - ((int)uVar15 >> 0x1f)" identifier - (parenthesized_expression "((int)uVar15 >> 0x1f)" ( (binary_expression "(int)uVar15 >> 0x1f" (cast_expression "(int)uVar15" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) ))) )) - (call_expression "(uint)(uVar3 < uVar15)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar3 < uVar15)" ( (binary_expression "uVar3 < uVar15" identifier < identifier) ))))) ;) (expression_statement "uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;" (assignment_expression "uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000" identifier = (binary_expression "uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000" (binary_expression "uVar3 - uVar15 >> 0x10" (binary_expression "uVar3 - uVar15" identifier - identifier) >> number_literal) | (binary_expression "uVar17 * 0x10000" identifier * number_literal))) ;) (expression_statement "uVar17 = uVar17 >> 0x10;" (assignment_expression "uVar17 = uVar17 >> 0x10" identifier = (binary_expression "uVar17 >> 0x10" identifier >> number_literal)) ;) (goto_statement "goto LAB_0004dcec;" goto statement_identifier ;) })) }) (else_clause "else if (0xa6 < uVar4) {\n        return;\n      }" else (if_statement "if (0xa6 < uVar4) {\n        return;\n      }" if (parenthesized_expression "(0xa6 < uVar4)" ( (binary_expression "0xa6 < uVar4" number_literal < identifier) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) })))) (goto_statement "goto LAB_0004dd90;" goto statement_identifier ;) })) (if_statement "if (0x44 < uVar4) {\n      return;\n    }" if (parenthesized_expression "(0x44 < uVar4)" ( (binary_expression "0x44 < uVar4" number_literal < identifier) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (if_statement "if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }" if (parenthesized_expression "(uVar4 == 2)" ( (binary_expression "uVar4 == 2" identifier == number_literal) )) (compound_statement "{\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }" { (if_statement "if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }" if (parenthesized_expression "((*param_1 & 1) != 0)" ( (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" ( (binary_expression "*param_1 & 1" (pointer_expression "*param_1" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }" { (expression_statement "param_1[0x30] = 9;" (assignment_expression "param_1[0x30] = 9" (subscript_expression "param_1[0x30]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x31] = 0;" (assignment_expression "param_1[0x31] = 0" (subscript_expression "param_1[0x31]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x32] = 0;" (assignment_expression "param_1[0x32] = 0" (subscript_expression "param_1[0x32]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x33] = 0;" (assignment_expression "param_1[0x33] = 0" (subscript_expression "param_1[0x33]" identifier [ number_literal ]) = number_literal) ;) (return_statement "return;" return ;) })) (expression_statement "uVar14 = 4;" (assignment_expression "uVar14 = 4" identifier = number_literal) ;) (labeled_statement "LAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }" statement_identifier : (if_statement "if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }" if (parenthesized_expression "(*(int *)(param_1 + 0xc) != 0)" ( (binary_expression "*(int *)(param_1 + 0xc) != 0" (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) }))) (expression_statement "FUN_000469c0(iVar1,uVar3,uVar17,uVar14);" (call_expression "FUN_000469c0(iVar1,uVar3,uVar17,uVar14)" identifier (argument_list "(iVar1,uVar3,uVar17,uVar14)" ( identifier , identifier , identifier , identifier ))) ;) (goto_statement "goto LAB_0004de31;" goto statement_identifier ;) })) (if_statement "if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }" if (parenthesized_expression "(uVar4 < 3)" ( (binary_expression "uVar4 < 3" identifier < number_literal) )) (compound_statement "{\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }" { (if_statement "if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }" if (parenthesized_expression "(uVar4 == 1)" ( (binary_expression "uVar4 == 1" identifier == number_literal) )) (compound_statement "{\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }" { (if_statement "if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }" if (parenthesized_expression "((*param_1 & 1) != 0)" ( (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" ( (binary_expression "*param_1 & 1" (pointer_expression "*param_1" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }" { (expression_statement "param_1[0x30] = 8;" (assignment_expression "param_1[0x30] = 8" (subscript_expression "param_1[0x30]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x31] = 0;" (assignment_expression "param_1[0x31] = 0" (subscript_expression "param_1[0x31]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x32] = 0;" (assignment_expression "param_1[0x32] = 0" (subscript_expression "param_1[0x32]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x33] = 0;" (assignment_expression "param_1[0x33] = 0" (subscript_expression "param_1[0x33]" identifier [ number_literal ]) = number_literal) ;) (return_statement "return;" return ;) })) (expression_statement "uVar14 = 8;" (assignment_expression "uVar14 = 8" identifier = number_literal) ;) (goto_statement "goto LAB_0004de57;" goto statement_identifier ;) })) }) (else_clause "else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }" else (compound_statement "{\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }" { (if_statement "if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }" if (parenthesized_expression "(uVar4 == 5)" ( (binary_expression "uVar4 == 5" identifier == number_literal) )) (compound_statement "{\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }" { (if_statement "if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }" if (parenthesized_expression "((*param_1 & 1) != 0)" ( (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" ( (binary_expression "*param_1 & 1" (pointer_expression "*param_1" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }" { (expression_statement "param_1[0x30] = 0xb;" (assignment_expression "param_1[0x30] = 0xb" (subscript_expression "param_1[0x30]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x31] = 0;" (assignment_expression "param_1[0x31] = 0" (subscript_expression "param_1[0x31]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x32] = 0;" (assignment_expression "param_1[0x32] = 0" (subscript_expression "param_1[0x32]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x33] = 0;" (assignment_expression "param_1[0x33] = 0" (subscript_expression "param_1[0x33]" identifier [ number_literal ]) = number_literal) ;) (return_statement "return;" return ;) })) (expression_statement "uVar14 = 2;" (assignment_expression "uVar14 = 2" identifier = number_literal) ;) (goto_statement "goto LAB_0004de57;" goto statement_identifier ;) })) (if_statement "if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }" if (parenthesized_expression "(uVar4 == 0x42)" ( (binary_expression "uVar4 == 0x42" identifier == number_literal) )) (compound_statement "{\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }" { (if_statement "if ((*param_1 & 1) != 0) {\n          return;\n        }" if (parenthesized_expression "((*param_1 & 1) != 0)" ( (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" ( (binary_expression "*param_1 & 1" (pointer_expression "*param_1" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) (if_statement "if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }" if (parenthesized_expression "(*(int *)(param_1 + 0xc) != 0)" ( (binary_expression "*(int *)(param_1 + 0xc) != 0" (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) (expression_statement "uVar15 = bfd_getl32(iVar1);" (assignment_expression "uVar15 = bfd_getl32(iVar1)" identifier = (call_expression "bfd_getl32(iVar1)" identifier (argument_list "(iVar1)" ( identifier )))) ;) (expression_statement "uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;" (assignment_expression "uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000" identifier = (binary_expression "uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000" (binary_expression "uVar3 >> 2 & 0x1fffff" (binary_expression "uVar3 >> 2" identifier >> number_literal) & number_literal) | (binary_expression "uVar15 & 0xffe00000" identifier & number_literal))) ;) (goto_statement "goto LAB_0004de1f;" goto statement_identifier ;) })) }))) (labeled_statement "LAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_000316c0(uVar16,uVar14);\n    }" statement_identifier : (if_statement "if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_000316c0(uVar16,uVar14);\n    }" if (parenthesized_expression "(-1 < (int)uVar4)" ( (binary_expression "-1 < (int)uVar4" number_literal < (cast_expression "(int)uVar4" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      FUN_000316c0(uVar16,uVar14);\n    }" { (expression_statement "uVar14 = bfd_get_reloc_code_name(uVar4);" (assignment_expression "uVar14 = bfd_get_reloc_code_name(uVar4)" identifier = (call_expression "bfd_get_reloc_code_name(uVar4)" identifier (argument_list "(uVar4)" ( identifier )))) ;) (expression_statement "uVar16 = dcgettext(0,"unhandled relocation type %s",5);" (assignment_expression "uVar16 = dcgettext(0,"unhandled relocation type %s",5)" identifier = (call_expression "dcgettext(0,"unhandled relocation type %s",5)" identifier (argument_list "(0,"unhandled relocation type %s",5)" ( number_literal , (string_literal ""unhandled relocation type %s"" " string_content ") , number_literal )))) ;) comment (expression_statement "FUN_000316c0(uVar16,uVar14);" (call_expression "FUN_000316c0(uVar16,uVar14)" identifier (argument_list "(uVar16,uVar14)" ( identifier , identifier ))) ;) }))) (if_statement "if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    /* WARNING: Subroutine does not return */\n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }" if (parenthesized_expression "(*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4)" ( (binary_expression "*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4" (pointer_expression "*(int *)PTR_alpha_num_operands_00077fcc" * (cast_expression "(int *)PTR_alpha_num_operands_00077fcc" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) <= (cast_expression "(int)-uVar4" ( (type_descriptor "int" primitive_type) ) (unary_expression "-uVar4" - identifier))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }" { comment (expression_statement "FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);" (call_expression "FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15)" identifier (argument_list "("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15)" ( (string_literal ""../../gas/config/tc-alpha.c"" " string_content ") , number_literal , (string_literal ""md_apply_fix"" " string_content ") , identifier ))) ;) })) (if_statement "if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }" if (parenthesized_expression "((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180))" ( (binary_expression "(*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)" (parenthesized_expression "(*(int *)(param_1 + 0xc) != 0)" ( (binary_expression "*(int *)(param_1 + 0xc) != 0" (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) != number_literal) )) && (parenthesized_expression "(puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)" ( (comma_expression "puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180" (assignment_expression "puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc))" identifier = (cast_expression "(undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc))" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0003e1d0(*(int *)(param_1 + 0xc))" identifier (argument_list "(*(int *)(param_1 + 0xc))" ( (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) ))))) , (binary_expression "puVar13 != PTR__bfd_std_section_00077fa0 + 0x180" identifier != (binary_expression "PTR__bfd_std_section_00077fa0 + 0x180" identifier + number_literal))) ))) )) (compound_statement "{\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }" { (expression_statement "uVar14 = dcgettext(0,"non-absolute expression in constant field",5);" (assignment_expression "uVar14 = dcgettext(0,"non-absolute expression in constant field",5)" identifier = (call_expression "dcgettext(0,"non-absolute expression in constant field",5)" identifier (argument_list "(0,"non-absolute expression in constant field",5)" ( number_literal , (string_literal ""non-absolute expression in constant field"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);" (call_expression "FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14)" identifier (argument_list "(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14)" ( (pointer_expression "*(undefined4 *)(param_1 + 0x3c)" * (cast_expression "(undefined4 *)(param_1 + 0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3c)" ( (binary_expression "param_1 + 0x3c" identifier + number_literal) )))) , (pointer_expression "*(undefined4 *)(param_1 + 0x40)" * (cast_expression "(undefined4 *)(param_1 + 0x40)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) )))) , identifier ))) ;) })) (expression_statement "bfd_getl32(iVar1);" (call_expression "bfd_getl32(iVar1)" identifier (argument_list "(iVar1)" ( identifier ))) ;) (expression_statement "uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));" (assignment_expression "uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40))" identifier = (call_expression "FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40))" identifier (argument_list "(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40))" ( identifier , identifier , (pointer_expression "*(undefined4 *)(param_1 + 0x3c)" * (cast_expression "(undefined4 *)(param_1 + 0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3c)" ( (binary_expression "param_1 + 0x3c" identifier + number_literal) )))) , (pointer_expression "*(undefined4 *)(param_1 + 0x40)" * (cast_expression "(undefined4 *)(param_1 + 0x40)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) )))) )))) ;) }))) (labeled_statement "LAB_0004de1f:\n  FUN_000469c0(iVar1,uVar15,0,4);" statement_identifier : (expression_statement "FUN_000469c0(iVar1,uVar15,0,4);" (call_expression "FUN_000469c0(iVar1,uVar15,0,4)" identifier (argument_list "(iVar1,uVar15,0,4)" ( identifier , identifier , number_literal , number_literal ))) ;)) (labeled_statement "LAB_0004de31:\n  *param_1 = *param_1 | 0x20;" statement_identifier : (expression_statement "*param_1 = *param_1 | 0x20;" (assignment_expression "*param_1 = *param_1 | 0x20" (pointer_expression "*param_1" * identifier) = (binary_expression "*param_1 | 0x20" (pointer_expression "*param_1" * identifier) | number_literal)) ;)) (return_statement "return;" return ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Unknown calling convention */\n\nvoid md_apply_fix(fixS *fixP,valueT *valP,segT seg)\n\n{\n  fragS *pfVar1;\n  uint uVar2;\n  bfd_reloc_code_real_type bVar3;\n  fix *pfVar4;\n  fragS *pfVar5;\n  int iVar6;\n  int iVar7;\n  valueT val;\n  addressT aVar8;\n  addressT aVar9;\n  uint uVar10;\n  uint uVar11;\n  symbolS *psVar12;\n  alpha_operand *operand;\n  segT paVar13;\n  char *format;\n  int iVar14;\n  uint uVar15;\n  undefined4 uVar16;\n  char *pcVar17;\n  uint uVar18;\n  \n  pfVar1 = fixP->fx_frag;\n  uVar15 = fixP->fx_where;\n  pcVar17 = pfVar1->fr_literal + uVar15;\n  iVar14 = *(int *)((int)valP + 4);\n  uVar2 = (uint)*valP;\n  val = *valP;\n  bVar3 = fixP->fx_r_type;\n  if (bVar3 == BFD_RELOC_ALPHA_HINT) {\n    if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) != (undefined1  [76])0x0\n       ) {\n      return;\n    }\n    if (fixP->fx_addsy != (symbolS *)0x0) {\n      return;\n    }\n    uVar15 = bfd_getl32(pcVar17);\n    uVar15 = uVar2 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }\n  else {\n    if (BFD_RELOC_ALPHA_HINT < bVar3) {\n      if (bVar3 < BFD_RELOC_ALPHA_TPREL64) {\n        if (BFD_RELOC_ALPHA_DTPREL64 < bVar3) {\nLAB_0004dea3:\n          if (fixP->fx_addsy == (symbolS *)0x0) {\n            return;\n          }\n          S_SET_THREAD_LOCAL(fixP->fx_addsy);\n          return;\n        }\n        if (bVar3 < BFD_RELOC_ALPHA_DTPMOD64) {\n          if (BFD_RELOC_ALPHA_BOH < bVar3) goto LAB_0004dea3;\n          if (bVar3 < BFD_RELOC_ALPHA_NOP) {\n            return;\n          }\n        }\n        else if (bVar3 == BFD_RELOC_ALPHA_GOTDTPREL16) goto LAB_0004dea3;\n      }\n      else if (BFD_RELOC_ALPHA_TPREL64 < bVar3) {\n        if (bVar3 < BFD_RELOC_MIPS_JMP) goto LAB_0004dea3;\n        if (bVar3 - BFD_RELOC_VTABLE_INHERIT < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (BFD_RELOC_GPREL32 < bVar3) {\n      if (bVar3 == BFD_RELOC_ALPHA_GPDISP_LO16) {\n        uVar15 = (uint)(short)uVar2;\n        *(undefined4 *)&fixP->fx_offset = 0;\n        *(undefined4 *)((int)&fixP->fx_offset + 4) = 0;\n        *(byte *)fixP = *(byte *)fixP | 0x20;\n        uVar18 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        psVar12 = section_symbol(seg);\n        fixP->fx_addsy = psVar12;\n        number_to_chars_littleendian(pcVar17,CONCAT44(uVar18,uVar15),2);\n        if ((fixP->fx_addsy != (symbolS *)0x0) ||\n           ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0)) {\n          return;\n        }\n        bVar3 = fixP->fx_r_type;\n        pcVar17 = (char *)dcgettext(0,"type %d reloc done?\n",5);\n        as_warn_where(fixP->fx_file,fixP->fx_line,pcVar17,bVar3);\n        goto LAB_0004de31;\n      }\n      if (bVar3 < BFD_RELOC_ALPHA_GPDISP) {\n        if (bVar3 == BFD_RELOC_ALPHA_GPDISP_HI16) {\n          pfVar4 = fixP->fx_next;\n          if (pfVar4 != (fix *)0x0) {\n            pfVar5 = pfVar4->fx_frag;\n            uVar18 = pfVar4->fx_where;\n            aVar8 = pfVar5->fr_address;\n            uVar10 = uVar18 + (int)pfVar5->fr_address;\n            iVar6 = *(int *)((int)&pfVar5->fr_address + 4);\n            aVar9 = pfVar1->fr_address;\n            uVar11 = uVar10 - (int)pfVar1->fr_address;\n            iVar7 = *(int *)((int)&pfVar1->fr_address + 4);\n            *(uint *)&fixP->fx_offset = uVar11 - uVar15;\n            *(uint *)((int)&fixP->fx_offset + 4) =\n                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15);\n          }\n          fixP->fx_r_type = BFD_RELOC_ALPHA_GPDISP;\n          uVar15 = (uint)(short)uVar2;\n          uVar18 = (iVar14 - ((int)uVar15 >> 0x1f)) - (uint)(uVar2 < uVar15);\n          uVar15 = uVar2 - uVar15 >> 0x10 | uVar18 * 0x10000;\n          uVar18 = uVar18 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (BFD_RELOC_ALPHA_LITERAL < bVar3) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (BFD_RELOC_LO10 < bVar3) {\n      return;\n    }\n    if (bVar3 == BFD_RELOC_32) {\n      if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n          (undefined1  [76])0x0) {\n        fixP->fx_r_type = BFD_RELOC_32_PCREL;\n        return;\n      }\n      iVar14 = 4;\nLAB_0004de57:\n      if (fixP->fx_addsy != (symbolS *)0x0) {\n        return;\n      }\n      number_to_chars_littleendian(pcVar17,*valP,iVar14);\n      goto LAB_0004de31;\n    }\n    if (bVar3 < BFD_RELOC_26) {\n      if (bVar3 == BFD_RELOC_64) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_64_PCREL;\n          return;\n        }\n        iVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (bVar3 == BFD_RELOC_16) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_16_PCREL;\n          return;\n        }\n        iVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (bVar3 == BFD_RELOC_23_PCREL_S2) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          return;\n        }\n        if (fixP->fx_addsy != (symbolS *)0x0) {\n          return;\n        }\n        uVar15 = bfd_getl32(pcVar17);\n        uVar15 = uVar2 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)bVar3) {\n      uVar16 = bfd_get_reloc_code_name(bVar3);\n      pcVar17 = (char *)dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar17,uVar16);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-bVar3) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix");\n    }\n    operand = (alpha_operand *)(PTR_alpha_operands_00077f74 + bVar3 * -0x10);\n    if ((fixP->fx_addsy != (symbolS *)0x0) &&\n       (paVar13 = S_GET_SEGMENT(fixP->fx_addsy),\n       paVar13 != (segT)(PTR__bfd_std_section_00077fa0 + 0x180))) {\n      format = (char *)dcgettext(0,"non-absolute expression in constant field",5);\n      as_bad_where(fixP->fx_file,fixP->fx_line,format);\n    }\n    uVar15 = bfd_getl32(pcVar17);\n    uVar15 = insert_operand(uVar15,operand,val,fixP->fx_file,fixP->fx_line);\n  }\nLAB_0004de1f:\n  number_to_chars_littleendian(pcVar17,(ulonglong)uVar15,4);\nLAB_0004de31:\n  *(byte *)fixP = *(byte *)fixP | 0x20;\n  return;\n}\n\n" comment comment (function_definition "void md_apply_fix(fixS *fixP,valueT *valP,segT seg)\n\n{\n  fragS *pfVar1;\n  uint uVar2;\n  bfd_reloc_code_real_type bVar3;\n  fix *pfVar4;\n  fragS *pfVar5;\n  int iVar6;\n  int iVar7;\n  valueT val;\n  addressT aVar8;\n  addressT aVar9;\n  uint uVar10;\n  uint uVar11;\n  symbolS *psVar12;\n  alpha_operand *operand;\n  segT paVar13;\n  char *format;\n  int iVar14;\n  uint uVar15;\n  undefined4 uVar16;\n  char *pcVar17;\n  uint uVar18;\n  \n  pfVar1 = fixP->fx_frag;\n  uVar15 = fixP->fx_where;\n  pcVar17 = pfVar1->fr_literal + uVar15;\n  iVar14 = *(int *)((int)valP + 4);\n  uVar2 = (uint)*valP;\n  val = *valP;\n  bVar3 = fixP->fx_r_type;\n  if (bVar3 == BFD_RELOC_ALPHA_HINT) {\n    if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) != (undefined1  [76])0x0\n       ) {\n      return;\n    }\n    if (fixP->fx_addsy != (symbolS *)0x0) {\n      return;\n    }\n    uVar15 = bfd_getl32(pcVar17);\n    uVar15 = uVar2 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }\n  else {\n    if (BFD_RELOC_ALPHA_HINT < bVar3) {\n      if (bVar3 < BFD_RELOC_ALPHA_TPREL64) {\n        if (BFD_RELOC_ALPHA_DTPREL64 < bVar3) {\nLAB_0004dea3:\n          if (fixP->fx_addsy == (symbolS *)0x0) {\n            return;\n          }\n          S_SET_THREAD_LOCAL(fixP->fx_addsy);\n          return;\n        }\n        if (bVar3 < BFD_RELOC_ALPHA_DTPMOD64) {\n          if (BFD_RELOC_ALPHA_BOH < bVar3) goto LAB_0004dea3;\n          if (bVar3 < BFD_RELOC_ALPHA_NOP) {\n            return;\n          }\n        }\n        else if (bVar3 == BFD_RELOC_ALPHA_GOTDTPREL16) goto LAB_0004dea3;\n      }\n      else if (BFD_RELOC_ALPHA_TPREL64 < bVar3) {\n        if (bVar3 < BFD_RELOC_MIPS_JMP) goto LAB_0004dea3;\n        if (bVar3 - BFD_RELOC_VTABLE_INHERIT < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (BFD_RELOC_GPREL32 < bVar3) {\n      if (bVar3 == BFD_RELOC_ALPHA_GPDISP_LO16) {\n        uVar15 = (uint)(short)uVar2;\n        *(undefined4 *)&fixP->fx_offset = 0;\n        *(undefined4 *)((int)&fixP->fx_offset + 4) = 0;\n        *(byte *)fixP = *(byte *)fixP | 0x20;\n        uVar18 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        psVar12 = section_symbol(seg);\n        fixP->fx_addsy = psVar12;\n        number_to_chars_littleendian(pcVar17,CONCAT44(uVar18,uVar15),2);\n        if ((fixP->fx_addsy != (symbolS *)0x0) ||\n           ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0)) {\n          return;\n        }\n        bVar3 = fixP->fx_r_type;\n        pcVar17 = (char *)dcgettext(0,"type %d reloc done?\n",5);\n        as_warn_where(fixP->fx_file,fixP->fx_line,pcVar17,bVar3);\n        goto LAB_0004de31;\n      }\n      if (bVar3 < BFD_RELOC_ALPHA_GPDISP) {\n        if (bVar3 == BFD_RELOC_ALPHA_GPDISP_HI16) {\n          pfVar4 = fixP->fx_next;\n          if (pfVar4 != (fix *)0x0) {\n            pfVar5 = pfVar4->fx_frag;\n            uVar18 = pfVar4->fx_where;\n            aVar8 = pfVar5->fr_address;\n            uVar10 = uVar18 + (int)pfVar5->fr_address;\n            iVar6 = *(int *)((int)&pfVar5->fr_address + 4);\n            aVar9 = pfVar1->fr_address;\n            uVar11 = uVar10 - (int)pfVar1->fr_address;\n            iVar7 = *(int *)((int)&pfVar1->fr_address + 4);\n            *(uint *)&fixP->fx_offset = uVar11 - uVar15;\n            *(uint *)((int)&fixP->fx_offset + 4) =\n                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15);\n          }\n          fixP->fx_r_type = BFD_RELOC_ALPHA_GPDISP;\n          uVar15 = (uint)(short)uVar2;\n          uVar18 = (iVar14 - ((int)uVar15 >> 0x1f)) - (uint)(uVar2 < uVar15);\n          uVar15 = uVar2 - uVar15 >> 0x10 | uVar18 * 0x10000;\n          uVar18 = uVar18 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (BFD_RELOC_ALPHA_LITERAL < bVar3) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (BFD_RELOC_LO10 < bVar3) {\n      return;\n    }\n    if (bVar3 == BFD_RELOC_32) {\n      if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n          (undefined1  [76])0x0) {\n        fixP->fx_r_type = BFD_RELOC_32_PCREL;\n        return;\n      }\n      iVar14 = 4;\nLAB_0004de57:\n      if (fixP->fx_addsy != (symbolS *)0x0) {\n        return;\n      }\n      number_to_chars_littleendian(pcVar17,*valP,iVar14);\n      goto LAB_0004de31;\n    }\n    if (bVar3 < BFD_RELOC_26) {\n      if (bVar3 == BFD_RELOC_64) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_64_PCREL;\n          return;\n        }\n        iVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (bVar3 == BFD_RELOC_16) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_16_PCREL;\n          return;\n        }\n        iVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (bVar3 == BFD_RELOC_23_PCREL_S2) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          return;\n        }\n        if (fixP->fx_addsy != (symbolS *)0x0) {\n          return;\n        }\n        uVar15 = bfd_getl32(pcVar17);\n        uVar15 = uVar2 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)bVar3) {\n      uVar16 = bfd_get_reloc_code_name(bVar3);\n      pcVar17 = (char *)dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar17,uVar16);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-bVar3) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix");\n    }\n    operand = (alpha_operand *)(PTR_alpha_operands_00077f74 + bVar3 * -0x10);\n    if ((fixP->fx_addsy != (symbolS *)0x0) &&\n       (paVar13 = S_GET_SEGMENT(fixP->fx_addsy),\n       paVar13 != (segT)(PTR__bfd_std_section_00077fa0 + 0x180))) {\n      format = (char *)dcgettext(0,"non-absolute expression in constant field",5);\n      as_bad_where(fixP->fx_file,fixP->fx_line,format);\n    }\n    uVar15 = bfd_getl32(pcVar17);\n    uVar15 = insert_operand(uVar15,operand,val,fixP->fx_file,fixP->fx_line);\n  }\nLAB_0004de1f:\n  number_to_chars_littleendian(pcVar17,(ulonglong)uVar15,4);\nLAB_0004de31:\n  *(byte *)fixP = *(byte *)fixP | 0x20;\n  return;\n}" primitive_type (function_declarator "md_apply_fix(fixS *fixP,valueT *valP,segT seg)" identifier (parameter_list "(fixS *fixP,valueT *valP,segT seg)" ( (parameter_declaration "fixS *fixP" type_identifier (pointer_declarator "*fixP" * identifier)) , (parameter_declaration "valueT *valP" type_identifier (pointer_declarator "*valP" * identifier)) , (parameter_declaration "segT seg" type_identifier identifier) ))) (compound_statement "{\n  fragS *pfVar1;\n  uint uVar2;\n  bfd_reloc_code_real_type bVar3;\n  fix *pfVar4;\n  fragS *pfVar5;\n  int iVar6;\n  int iVar7;\n  valueT val;\n  addressT aVar8;\n  addressT aVar9;\n  uint uVar10;\n  uint uVar11;\n  symbolS *psVar12;\n  alpha_operand *operand;\n  segT paVar13;\n  char *format;\n  int iVar14;\n  uint uVar15;\n  undefined4 uVar16;\n  char *pcVar17;\n  uint uVar18;\n  \n  pfVar1 = fixP->fx_frag;\n  uVar15 = fixP->fx_where;\n  pcVar17 = pfVar1->fr_literal + uVar15;\n  iVar14 = *(int *)((int)valP + 4);\n  uVar2 = (uint)*valP;\n  val = *valP;\n  bVar3 = fixP->fx_r_type;\n  if (bVar3 == BFD_RELOC_ALPHA_HINT) {\n    if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) != (undefined1  [76])0x0\n       ) {\n      return;\n    }\n    if (fixP->fx_addsy != (symbolS *)0x0) {\n      return;\n    }\n    uVar15 = bfd_getl32(pcVar17);\n    uVar15 = uVar2 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }\n  else {\n    if (BFD_RELOC_ALPHA_HINT < bVar3) {\n      if (bVar3 < BFD_RELOC_ALPHA_TPREL64) {\n        if (BFD_RELOC_ALPHA_DTPREL64 < bVar3) {\nLAB_0004dea3:\n          if (fixP->fx_addsy == (symbolS *)0x0) {\n            return;\n          }\n          S_SET_THREAD_LOCAL(fixP->fx_addsy);\n          return;\n        }\n        if (bVar3 < BFD_RELOC_ALPHA_DTPMOD64) {\n          if (BFD_RELOC_ALPHA_BOH < bVar3) goto LAB_0004dea3;\n          if (bVar3 < BFD_RELOC_ALPHA_NOP) {\n            return;\n          }\n        }\n        else if (bVar3 == BFD_RELOC_ALPHA_GOTDTPREL16) goto LAB_0004dea3;\n      }\n      else if (BFD_RELOC_ALPHA_TPREL64 < bVar3) {\n        if (bVar3 < BFD_RELOC_MIPS_JMP) goto LAB_0004dea3;\n        if (bVar3 - BFD_RELOC_VTABLE_INHERIT < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (BFD_RELOC_GPREL32 < bVar3) {\n      if (bVar3 == BFD_RELOC_ALPHA_GPDISP_LO16) {\n        uVar15 = (uint)(short)uVar2;\n        *(undefined4 *)&fixP->fx_offset = 0;\n        *(undefined4 *)((int)&fixP->fx_offset + 4) = 0;\n        *(byte *)fixP = *(byte *)fixP | 0x20;\n        uVar18 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        psVar12 = section_symbol(seg);\n        fixP->fx_addsy = psVar12;\n        number_to_chars_littleendian(pcVar17,CONCAT44(uVar18,uVar15),2);\n        if ((fixP->fx_addsy != (symbolS *)0x0) ||\n           ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0)) {\n          return;\n        }\n        bVar3 = fixP->fx_r_type;\n        pcVar17 = (char *)dcgettext(0,"type %d reloc done?\n",5);\n        as_warn_where(fixP->fx_file,fixP->fx_line,pcVar17,bVar3);\n        goto LAB_0004de31;\n      }\n      if (bVar3 < BFD_RELOC_ALPHA_GPDISP) {\n        if (bVar3 == BFD_RELOC_ALPHA_GPDISP_HI16) {\n          pfVar4 = fixP->fx_next;\n          if (pfVar4 != (fix *)0x0) {\n            pfVar5 = pfVar4->fx_frag;\n            uVar18 = pfVar4->fx_where;\n            aVar8 = pfVar5->fr_address;\n            uVar10 = uVar18 + (int)pfVar5->fr_address;\n            iVar6 = *(int *)((int)&pfVar5->fr_address + 4);\n            aVar9 = pfVar1->fr_address;\n            uVar11 = uVar10 - (int)pfVar1->fr_address;\n            iVar7 = *(int *)((int)&pfVar1->fr_address + 4);\n            *(uint *)&fixP->fx_offset = uVar11 - uVar15;\n            *(uint *)((int)&fixP->fx_offset + 4) =\n                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15);\n          }\n          fixP->fx_r_type = BFD_RELOC_ALPHA_GPDISP;\n          uVar15 = (uint)(short)uVar2;\n          uVar18 = (iVar14 - ((int)uVar15 >> 0x1f)) - (uint)(uVar2 < uVar15);\n          uVar15 = uVar2 - uVar15 >> 0x10 | uVar18 * 0x10000;\n          uVar18 = uVar18 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (BFD_RELOC_ALPHA_LITERAL < bVar3) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (BFD_RELOC_LO10 < bVar3) {\n      return;\n    }\n    if (bVar3 == BFD_RELOC_32) {\n      if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n          (undefined1  [76])0x0) {\n        fixP->fx_r_type = BFD_RELOC_32_PCREL;\n        return;\n      }\n      iVar14 = 4;\nLAB_0004de57:\n      if (fixP->fx_addsy != (symbolS *)0x0) {\n        return;\n      }\n      number_to_chars_littleendian(pcVar17,*valP,iVar14);\n      goto LAB_0004de31;\n    }\n    if (bVar3 < BFD_RELOC_26) {\n      if (bVar3 == BFD_RELOC_64) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_64_PCREL;\n          return;\n        }\n        iVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (bVar3 == BFD_RELOC_16) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_16_PCREL;\n          return;\n        }\n        iVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (bVar3 == BFD_RELOC_23_PCREL_S2) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          return;\n        }\n        if (fixP->fx_addsy != (symbolS *)0x0) {\n          return;\n        }\n        uVar15 = bfd_getl32(pcVar17);\n        uVar15 = uVar2 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)bVar3) {\n      uVar16 = bfd_get_reloc_code_name(bVar3);\n      pcVar17 = (char *)dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar17,uVar16);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-bVar3) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix");\n    }\n    operand = (alpha_operand *)(PTR_alpha_operands_00077f74 + bVar3 * -0x10);\n    if ((fixP->fx_addsy != (symbolS *)0x0) &&\n       (paVar13 = S_GET_SEGMENT(fixP->fx_addsy),\n       paVar13 != (segT)(PTR__bfd_std_section_00077fa0 + 0x180))) {\n      format = (char *)dcgettext(0,"non-absolute expression in constant field",5);\n      as_bad_where(fixP->fx_file,fixP->fx_line,format);\n    }\n    uVar15 = bfd_getl32(pcVar17);\n    uVar15 = insert_operand(uVar15,operand,val,fixP->fx_file,fixP->fx_line);\n  }\nLAB_0004de1f:\n  number_to_chars_littleendian(pcVar17,(ulonglong)uVar15,4);\nLAB_0004de31:\n  *(byte *)fixP = *(byte *)fixP | 0x20;\n  return;\n}" { (declaration "fragS *pfVar1;" type_identifier (pointer_declarator "*pfVar1" * identifier) ;) (declaration "uint uVar2;" type_identifier identifier ;) (declaration "bfd_reloc_code_real_type bVar3;" type_identifier identifier ;) (declaration "fix *pfVar4;" type_identifier (pointer_declarator "*pfVar4" * identifier) ;) (declaration "fragS *pfVar5;" type_identifier (pointer_declarator "*pfVar5" * identifier) ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "valueT val;" type_identifier identifier ;) (declaration "addressT aVar8;" type_identifier identifier ;) (declaration "addressT aVar9;" type_identifier identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "uint uVar11;" type_identifier identifier ;) (declaration "symbolS *psVar12;" type_identifier (pointer_declarator "*psVar12" * identifier) ;) (declaration "alpha_operand *operand;" type_identifier (pointer_declarator "*operand" * identifier) ;) (declaration "segT paVar13;" type_identifier identifier ;) (declaration "char *format;" primitive_type (pointer_declarator "*format" * identifier) ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "uint uVar15;" type_identifier identifier ;) (declaration "undefined4 uVar16;" type_identifier identifier ;) (declaration "char *pcVar17;" primitive_type (pointer_declarator "*pcVar17" * identifier) ;) (declaration "uint uVar18;" type_identifier identifier ;) (expression_statement "pfVar1 = fixP->fx_frag;" (assignment_expression "pfVar1 = fixP->fx_frag" identifier = (field_expression "fixP->fx_frag" identifier -> field_identifier)) ;) (expression_statement "uVar15 = fixP->fx_where;" (assignment_expression "uVar15 = fixP->fx_where" identifier = (field_expression "fixP->fx_where" identifier -> field_identifier)) ;) (expression_statement "pcVar17 = pfVar1->fr_literal + uVar15;" (assignment_expression "pcVar17 = pfVar1->fr_literal + uVar15" identifier = (binary_expression "pfVar1->fr_literal + uVar15" (field_expression "pfVar1->fr_literal" identifier -> field_identifier) + identifier)) ;) (expression_statement "iVar14 = *(int *)((int)valP + 4);" (assignment_expression "iVar14 = *(int *)((int)valP + 4)" identifier = (pointer_expression "*(int *)((int)valP + 4)" * (cast_expression "(int *)((int)valP + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)valP + 4)" ( (binary_expression "(int)valP + 4" (cast_expression "(int)valP" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) ))))) ;) (expression_statement "uVar2 = (uint)*valP;" (assignment_expression "uVar2 = (uint)*valP" identifier = (binary_expression "(uint)*valP" (parenthesized_expression "(uint)" ( identifier )) * identifier)) ;) (expression_statement "val = *valP;" (assignment_expression "val = *valP" identifier = (pointer_expression "*valP" * identifier)) ;) (expression_statement "bVar3 = fixP->fx_r_type;" (assignment_expression "bVar3 = fixP->fx_r_type" identifier = (field_expression "fixP->fx_r_type" identifier -> field_identifier)) ;) (if_statement "if (bVar3 == BFD_RELOC_ALPHA_HINT) {\n    if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) != (undefined1  [76])0x0\n       ) {\n      return;\n    }\n    if (fixP->fx_addsy != (symbolS *)0x0) {\n      return;\n    }\n    uVar15 = bfd_getl32(pcVar17);\n    uVar15 = uVar2 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }\n  else {\n    if (BFD_RELOC_ALPHA_HINT < bVar3) {\n      if (bVar3 < BFD_RELOC_ALPHA_TPREL64) {\n        if (BFD_RELOC_ALPHA_DTPREL64 < bVar3) {\nLAB_0004dea3:\n          if (fixP->fx_addsy == (symbolS *)0x0) {\n            return;\n          }\n          S_SET_THREAD_LOCAL(fixP->fx_addsy);\n          return;\n        }\n        if (bVar3 < BFD_RELOC_ALPHA_DTPMOD64) {\n          if (BFD_RELOC_ALPHA_BOH < bVar3) goto LAB_0004dea3;\n          if (bVar3 < BFD_RELOC_ALPHA_NOP) {\n            return;\n          }\n        }\n        else if (bVar3 == BFD_RELOC_ALPHA_GOTDTPREL16) goto LAB_0004dea3;\n      }\n      else if (BFD_RELOC_ALPHA_TPREL64 < bVar3) {\n        if (bVar3 < BFD_RELOC_MIPS_JMP) goto LAB_0004dea3;\n        if (bVar3 - BFD_RELOC_VTABLE_INHERIT < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (BFD_RELOC_GPREL32 < bVar3) {\n      if (bVar3 == BFD_RELOC_ALPHA_GPDISP_LO16) {\n        uVar15 = (uint)(short)uVar2;\n        *(undefined4 *)&fixP->fx_offset = 0;\n        *(undefined4 *)((int)&fixP->fx_offset + 4) = 0;\n        *(byte *)fixP = *(byte *)fixP | 0x20;\n        uVar18 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        psVar12 = section_symbol(seg);\n        fixP->fx_addsy = psVar12;\n        number_to_chars_littleendian(pcVar17,CONCAT44(uVar18,uVar15),2);\n        if ((fixP->fx_addsy != (symbolS *)0x0) ||\n           ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0)) {\n          return;\n        }\n        bVar3 = fixP->fx_r_type;\n        pcVar17 = (char *)dcgettext(0,"type %d reloc done?\n",5);\n        as_warn_where(fixP->fx_file,fixP->fx_line,pcVar17,bVar3);\n        goto LAB_0004de31;\n      }\n      if (bVar3 < BFD_RELOC_ALPHA_GPDISP) {\n        if (bVar3 == BFD_RELOC_ALPHA_GPDISP_HI16) {\n          pfVar4 = fixP->fx_next;\n          if (pfVar4 != (fix *)0x0) {\n            pfVar5 = pfVar4->fx_frag;\n            uVar18 = pfVar4->fx_where;\n            aVar8 = pfVar5->fr_address;\n            uVar10 = uVar18 + (int)pfVar5->fr_address;\n            iVar6 = *(int *)((int)&pfVar5->fr_address + 4);\n            aVar9 = pfVar1->fr_address;\n            uVar11 = uVar10 - (int)pfVar1->fr_address;\n            iVar7 = *(int *)((int)&pfVar1->fr_address + 4);\n            *(uint *)&fixP->fx_offset = uVar11 - uVar15;\n            *(uint *)((int)&fixP->fx_offset + 4) =\n                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15);\n          }\n          fixP->fx_r_type = BFD_RELOC_ALPHA_GPDISP;\n          uVar15 = (uint)(short)uVar2;\n          uVar18 = (iVar14 - ((int)uVar15 >> 0x1f)) - (uint)(uVar2 < uVar15);\n          uVar15 = uVar2 - uVar15 >> 0x10 | uVar18 * 0x10000;\n          uVar18 = uVar18 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (BFD_RELOC_ALPHA_LITERAL < bVar3) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (BFD_RELOC_LO10 < bVar3) {\n      return;\n    }\n    if (bVar3 == BFD_RELOC_32) {\n      if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n          (undefined1  [76])0x0) {\n        fixP->fx_r_type = BFD_RELOC_32_PCREL;\n        return;\n      }\n      iVar14 = 4;\nLAB_0004de57:\n      if (fixP->fx_addsy != (symbolS *)0x0) {\n        return;\n      }\n      number_to_chars_littleendian(pcVar17,*valP,iVar14);\n      goto LAB_0004de31;\n    }\n    if (bVar3 < BFD_RELOC_26) {\n      if (bVar3 == BFD_RELOC_64) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_64_PCREL;\n          return;\n        }\n        iVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (bVar3 == BFD_RELOC_16) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_16_PCREL;\n          return;\n        }\n        iVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (bVar3 == BFD_RELOC_23_PCREL_S2) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          return;\n        }\n        if (fixP->fx_addsy != (symbolS *)0x0) {\n          return;\n        }\n        uVar15 = bfd_getl32(pcVar17);\n        uVar15 = uVar2 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)bVar3) {\n      uVar16 = bfd_get_reloc_code_name(bVar3);\n      pcVar17 = (char *)dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar17,uVar16);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-bVar3) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix");\n    }\n    operand = (alpha_operand *)(PTR_alpha_operands_00077f74 + bVar3 * -0x10);\n    if ((fixP->fx_addsy != (symbolS *)0x0) &&\n       (paVar13 = S_GET_SEGMENT(fixP->fx_addsy),\n       paVar13 != (segT)(PTR__bfd_std_section_00077fa0 + 0x180))) {\n      format = (char *)dcgettext(0,"non-absolute expression in constant field",5);\n      as_bad_where(fixP->fx_file,fixP->fx_line,format);\n    }\n    uVar15 = bfd_getl32(pcVar17);\n    uVar15 = insert_operand(uVar15,operand,val,fixP->fx_file,fixP->fx_line);\n  }" if (parenthesized_expression "(bVar3 == BFD_RELOC_ALPHA_HINT)" ( (binary_expression "bVar3 == BFD_RELOC_ALPHA_HINT" identifier == identifier) )) (compound_statement "{\n    if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) != (undefined1  [76])0x0\n       ) {\n      return;\n    }\n    if (fixP->fx_addsy != (symbolS *)0x0) {\n      return;\n    }\n    uVar15 = bfd_getl32(pcVar17);\n    uVar15 = uVar2 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }" { (if_statement "if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) != (undefined1  [76])0x0\n       ) {\n      return;\n    }" if (parenthesized_expression "((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) != (undefined1  [76])0x0\n       )" ( (binary_expression "(undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) != (undefined1  [76])0x0" (call_expression "(undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1)" (parenthesized_expression "(undefined1  [76])" ( (subscript_expression "undefined1  [76]" identifier [ number_literal ]) )) (argument_list "((undefined1  [76])*fixP & (undefined1  [76])0x1)" ( (binary_expression "(undefined1  [76])*fixP & (undefined1  [76])0x1" (binary_expression "(undefined1  [76])*fixP" (parenthesized_expression "(undefined1  [76])" ( (subscript_expression "undefined1  [76]" identifier [ number_literal ]) )) * identifier) & (cast_expression "(undefined1  [76])0x1" ( (type_descriptor "undefined1  [76]" type_identifier (abstract_array_declarator "[76]" [ number_literal ])) ) number_literal)) ))) != (cast_expression "(undefined1  [76])0x0" ( (type_descriptor "undefined1  [76]" type_identifier (abstract_array_declarator "[76]" [ number_literal ])) ) number_literal)) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (if_statement "if (fixP->fx_addsy != (symbolS *)0x0) {\n      return;\n    }" if (parenthesized_expression "(fixP->fx_addsy != (symbolS *)0x0)" ( (binary_expression "fixP->fx_addsy != (symbolS *)0x0" (field_expression "fixP->fx_addsy" identifier -> field_identifier) != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "uVar15 = bfd_getl32(pcVar17);" (assignment_expression "uVar15 = bfd_getl32(pcVar17)" identifier = (call_expression "bfd_getl32(pcVar17)" identifier (argument_list "(pcVar17)" ( identifier )))) ;) (expression_statement "uVar15 = uVar2 >> 2 & 0x3fff | uVar15 & 0xffffc000;" (assignment_expression "uVar15 = uVar2 >> 2 & 0x3fff | uVar15 & 0xffffc000" identifier = (binary_expression "uVar2 >> 2 & 0x3fff | uVar15 & 0xffffc000" (binary_expression "uVar2 >> 2 & 0x3fff" (binary_expression "uVar2 >> 2" identifier >> number_literal) & number_literal) | (binary_expression "uVar15 & 0xffffc000" identifier & number_literal))) ;) }) (else_clause "else {\n    if (BFD_RELOC_ALPHA_HINT < bVar3) {\n      if (bVar3 < BFD_RELOC_ALPHA_TPREL64) {\n        if (BFD_RELOC_ALPHA_DTPREL64 < bVar3) {\nLAB_0004dea3:\n          if (fixP->fx_addsy == (symbolS *)0x0) {\n            return;\n          }\n          S_SET_THREAD_LOCAL(fixP->fx_addsy);\n          return;\n        }\n        if (bVar3 < BFD_RELOC_ALPHA_DTPMOD64) {\n          if (BFD_RELOC_ALPHA_BOH < bVar3) goto LAB_0004dea3;\n          if (bVar3 < BFD_RELOC_ALPHA_NOP) {\n            return;\n          }\n        }\n        else if (bVar3 == BFD_RELOC_ALPHA_GOTDTPREL16) goto LAB_0004dea3;\n      }\n      else if (BFD_RELOC_ALPHA_TPREL64 < bVar3) {\n        if (bVar3 < BFD_RELOC_MIPS_JMP) goto LAB_0004dea3;\n        if (bVar3 - BFD_RELOC_VTABLE_INHERIT < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (BFD_RELOC_GPREL32 < bVar3) {\n      if (bVar3 == BFD_RELOC_ALPHA_GPDISP_LO16) {\n        uVar15 = (uint)(short)uVar2;\n        *(undefined4 *)&fixP->fx_offset = 0;\n        *(undefined4 *)((int)&fixP->fx_offset + 4) = 0;\n        *(byte *)fixP = *(byte *)fixP | 0x20;\n        uVar18 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        psVar12 = section_symbol(seg);\n        fixP->fx_addsy = psVar12;\n        number_to_chars_littleendian(pcVar17,CONCAT44(uVar18,uVar15),2);\n        if ((fixP->fx_addsy != (symbolS *)0x0) ||\n           ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0)) {\n          return;\n        }\n        bVar3 = fixP->fx_r_type;\n        pcVar17 = (char *)dcgettext(0,"type %d reloc done?\n",5);\n        as_warn_where(fixP->fx_file,fixP->fx_line,pcVar17,bVar3);\n        goto LAB_0004de31;\n      }\n      if (bVar3 < BFD_RELOC_ALPHA_GPDISP) {\n        if (bVar3 == BFD_RELOC_ALPHA_GPDISP_HI16) {\n          pfVar4 = fixP->fx_next;\n          if (pfVar4 != (fix *)0x0) {\n            pfVar5 = pfVar4->fx_frag;\n            uVar18 = pfVar4->fx_where;\n            aVar8 = pfVar5->fr_address;\n            uVar10 = uVar18 + (int)pfVar5->fr_address;\n            iVar6 = *(int *)((int)&pfVar5->fr_address + 4);\n            aVar9 = pfVar1->fr_address;\n            uVar11 = uVar10 - (int)pfVar1->fr_address;\n            iVar7 = *(int *)((int)&pfVar1->fr_address + 4);\n            *(uint *)&fixP->fx_offset = uVar11 - uVar15;\n            *(uint *)((int)&fixP->fx_offset + 4) =\n                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15);\n          }\n          fixP->fx_r_type = BFD_RELOC_ALPHA_GPDISP;\n          uVar15 = (uint)(short)uVar2;\n          uVar18 = (iVar14 - ((int)uVar15 >> 0x1f)) - (uint)(uVar2 < uVar15);\n          uVar15 = uVar2 - uVar15 >> 0x10 | uVar18 * 0x10000;\n          uVar18 = uVar18 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (BFD_RELOC_ALPHA_LITERAL < bVar3) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (BFD_RELOC_LO10 < bVar3) {\n      return;\n    }\n    if (bVar3 == BFD_RELOC_32) {\n      if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n          (undefined1  [76])0x0) {\n        fixP->fx_r_type = BFD_RELOC_32_PCREL;\n        return;\n      }\n      iVar14 = 4;\nLAB_0004de57:\n      if (fixP->fx_addsy != (symbolS *)0x0) {\n        return;\n      }\n      number_to_chars_littleendian(pcVar17,*valP,iVar14);\n      goto LAB_0004de31;\n    }\n    if (bVar3 < BFD_RELOC_26) {\n      if (bVar3 == BFD_RELOC_64) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_64_PCREL;\n          return;\n        }\n        iVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (bVar3 == BFD_RELOC_16) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_16_PCREL;\n          return;\n        }\n        iVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (bVar3 == BFD_RELOC_23_PCREL_S2) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          return;\n        }\n        if (fixP->fx_addsy != (symbolS *)0x0) {\n          return;\n        }\n        uVar15 = bfd_getl32(pcVar17);\n        uVar15 = uVar2 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)bVar3) {\n      uVar16 = bfd_get_reloc_code_name(bVar3);\n      pcVar17 = (char *)dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar17,uVar16);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-bVar3) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix");\n    }\n    operand = (alpha_operand *)(PTR_alpha_operands_00077f74 + bVar3 * -0x10);\n    if ((fixP->fx_addsy != (symbolS *)0x0) &&\n       (paVar13 = S_GET_SEGMENT(fixP->fx_addsy),\n       paVar13 != (segT)(PTR__bfd_std_section_00077fa0 + 0x180))) {\n      format = (char *)dcgettext(0,"non-absolute expression in constant field",5);\n      as_bad_where(fixP->fx_file,fixP->fx_line,format);\n    }\n    uVar15 = bfd_getl32(pcVar17);\n    uVar15 = insert_operand(uVar15,operand,val,fixP->fx_file,fixP->fx_line);\n  }" else (compound_statement "{\n    if (BFD_RELOC_ALPHA_HINT < bVar3) {\n      if (bVar3 < BFD_RELOC_ALPHA_TPREL64) {\n        if (BFD_RELOC_ALPHA_DTPREL64 < bVar3) {\nLAB_0004dea3:\n          if (fixP->fx_addsy == (symbolS *)0x0) {\n            return;\n          }\n          S_SET_THREAD_LOCAL(fixP->fx_addsy);\n          return;\n        }\n        if (bVar3 < BFD_RELOC_ALPHA_DTPMOD64) {\n          if (BFD_RELOC_ALPHA_BOH < bVar3) goto LAB_0004dea3;\n          if (bVar3 < BFD_RELOC_ALPHA_NOP) {\n            return;\n          }\n        }\n        else if (bVar3 == BFD_RELOC_ALPHA_GOTDTPREL16) goto LAB_0004dea3;\n      }\n      else if (BFD_RELOC_ALPHA_TPREL64 < bVar3) {\n        if (bVar3 < BFD_RELOC_MIPS_JMP) goto LAB_0004dea3;\n        if (bVar3 - BFD_RELOC_VTABLE_INHERIT < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (BFD_RELOC_GPREL32 < bVar3) {\n      if (bVar3 == BFD_RELOC_ALPHA_GPDISP_LO16) {\n        uVar15 = (uint)(short)uVar2;\n        *(undefined4 *)&fixP->fx_offset = 0;\n        *(undefined4 *)((int)&fixP->fx_offset + 4) = 0;\n        *(byte *)fixP = *(byte *)fixP | 0x20;\n        uVar18 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        psVar12 = section_symbol(seg);\n        fixP->fx_addsy = psVar12;\n        number_to_chars_littleendian(pcVar17,CONCAT44(uVar18,uVar15),2);\n        if ((fixP->fx_addsy != (symbolS *)0x0) ||\n           ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0)) {\n          return;\n        }\n        bVar3 = fixP->fx_r_type;\n        pcVar17 = (char *)dcgettext(0,"type %d reloc done?\n",5);\n        as_warn_where(fixP->fx_file,fixP->fx_line,pcVar17,bVar3);\n        goto LAB_0004de31;\n      }\n      if (bVar3 < BFD_RELOC_ALPHA_GPDISP) {\n        if (bVar3 == BFD_RELOC_ALPHA_GPDISP_HI16) {\n          pfVar4 = fixP->fx_next;\n          if (pfVar4 != (fix *)0x0) {\n            pfVar5 = pfVar4->fx_frag;\n            uVar18 = pfVar4->fx_where;\n            aVar8 = pfVar5->fr_address;\n            uVar10 = uVar18 + (int)pfVar5->fr_address;\n            iVar6 = *(int *)((int)&pfVar5->fr_address + 4);\n            aVar9 = pfVar1->fr_address;\n            uVar11 = uVar10 - (int)pfVar1->fr_address;\n            iVar7 = *(int *)((int)&pfVar1->fr_address + 4);\n            *(uint *)&fixP->fx_offset = uVar11 - uVar15;\n            *(uint *)((int)&fixP->fx_offset + 4) =\n                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15);\n          }\n          fixP->fx_r_type = BFD_RELOC_ALPHA_GPDISP;\n          uVar15 = (uint)(short)uVar2;\n          uVar18 = (iVar14 - ((int)uVar15 >> 0x1f)) - (uint)(uVar2 < uVar15);\n          uVar15 = uVar2 - uVar15 >> 0x10 | uVar18 * 0x10000;\n          uVar18 = uVar18 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (BFD_RELOC_ALPHA_LITERAL < bVar3) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (BFD_RELOC_LO10 < bVar3) {\n      return;\n    }\n    if (bVar3 == BFD_RELOC_32) {\n      if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n          (undefined1  [76])0x0) {\n        fixP->fx_r_type = BFD_RELOC_32_PCREL;\n        return;\n      }\n      iVar14 = 4;\nLAB_0004de57:\n      if (fixP->fx_addsy != (symbolS *)0x0) {\n        return;\n      }\n      number_to_chars_littleendian(pcVar17,*valP,iVar14);\n      goto LAB_0004de31;\n    }\n    if (bVar3 < BFD_RELOC_26) {\n      if (bVar3 == BFD_RELOC_64) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_64_PCREL;\n          return;\n        }\n        iVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (bVar3 == BFD_RELOC_16) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_16_PCREL;\n          return;\n        }\n        iVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (bVar3 == BFD_RELOC_23_PCREL_S2) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          return;\n        }\n        if (fixP->fx_addsy != (symbolS *)0x0) {\n          return;\n        }\n        uVar15 = bfd_getl32(pcVar17);\n        uVar15 = uVar2 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)bVar3) {\n      uVar16 = bfd_get_reloc_code_name(bVar3);\n      pcVar17 = (char *)dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar17,uVar16);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-bVar3) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix");\n    }\n    operand = (alpha_operand *)(PTR_alpha_operands_00077f74 + bVar3 * -0x10);\n    if ((fixP->fx_addsy != (symbolS *)0x0) &&\n       (paVar13 = S_GET_SEGMENT(fixP->fx_addsy),\n       paVar13 != (segT)(PTR__bfd_std_section_00077fa0 + 0x180))) {\n      format = (char *)dcgettext(0,"non-absolute expression in constant field",5);\n      as_bad_where(fixP->fx_file,fixP->fx_line,format);\n    }\n    uVar15 = bfd_getl32(pcVar17);\n    uVar15 = insert_operand(uVar15,operand,val,fixP->fx_file,fixP->fx_line);\n  }" { (if_statement "if (BFD_RELOC_ALPHA_HINT < bVar3) {\n      if (bVar3 < BFD_RELOC_ALPHA_TPREL64) {\n        if (BFD_RELOC_ALPHA_DTPREL64 < bVar3) {\nLAB_0004dea3:\n          if (fixP->fx_addsy == (symbolS *)0x0) {\n            return;\n          }\n          S_SET_THREAD_LOCAL(fixP->fx_addsy);\n          return;\n        }\n        if (bVar3 < BFD_RELOC_ALPHA_DTPMOD64) {\n          if (BFD_RELOC_ALPHA_BOH < bVar3) goto LAB_0004dea3;\n          if (bVar3 < BFD_RELOC_ALPHA_NOP) {\n            return;\n          }\n        }\n        else if (bVar3 == BFD_RELOC_ALPHA_GOTDTPREL16) goto LAB_0004dea3;\n      }\n      else if (BFD_RELOC_ALPHA_TPREL64 < bVar3) {\n        if (bVar3 < BFD_RELOC_MIPS_JMP) goto LAB_0004dea3;\n        if (bVar3 - BFD_RELOC_VTABLE_INHERIT < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }" if (parenthesized_expression "(BFD_RELOC_ALPHA_HINT < bVar3)" ( (binary_expression "BFD_RELOC_ALPHA_HINT < bVar3" identifier < identifier) )) (compound_statement "{\n      if (bVar3 < BFD_RELOC_ALPHA_TPREL64) {\n        if (BFD_RELOC_ALPHA_DTPREL64 < bVar3) {\nLAB_0004dea3:\n          if (fixP->fx_addsy == (symbolS *)0x0) {\n            return;\n          }\n          S_SET_THREAD_LOCAL(fixP->fx_addsy);\n          return;\n        }\n        if (bVar3 < BFD_RELOC_ALPHA_DTPMOD64) {\n          if (BFD_RELOC_ALPHA_BOH < bVar3) goto LAB_0004dea3;\n          if (bVar3 < BFD_RELOC_ALPHA_NOP) {\n            return;\n          }\n        }\n        else if (bVar3 == BFD_RELOC_ALPHA_GOTDTPREL16) goto LAB_0004dea3;\n      }\n      else if (BFD_RELOC_ALPHA_TPREL64 < bVar3) {\n        if (bVar3 < BFD_RELOC_MIPS_JMP) goto LAB_0004dea3;\n        if (bVar3 - BFD_RELOC_VTABLE_INHERIT < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }" { (if_statement "if (bVar3 < BFD_RELOC_ALPHA_TPREL64) {\n        if (BFD_RELOC_ALPHA_DTPREL64 < bVar3) {\nLAB_0004dea3:\n          if (fixP->fx_addsy == (symbolS *)0x0) {\n            return;\n          }\n          S_SET_THREAD_LOCAL(fixP->fx_addsy);\n          return;\n        }\n        if (bVar3 < BFD_RELOC_ALPHA_DTPMOD64) {\n          if (BFD_RELOC_ALPHA_BOH < bVar3) goto LAB_0004dea3;\n          if (bVar3 < BFD_RELOC_ALPHA_NOP) {\n            return;\n          }\n        }\n        else if (bVar3 == BFD_RELOC_ALPHA_GOTDTPREL16) goto LAB_0004dea3;\n      }\n      else if (BFD_RELOC_ALPHA_TPREL64 < bVar3) {\n        if (bVar3 < BFD_RELOC_MIPS_JMP) goto LAB_0004dea3;\n        if (bVar3 - BFD_RELOC_VTABLE_INHERIT < 2) {\n          return;\n        }\n      }" if (parenthesized_expression "(bVar3 < BFD_RELOC_ALPHA_TPREL64)" ( (binary_expression "bVar3 < BFD_RELOC_ALPHA_TPREL64" identifier < identifier) )) (compound_statement "{\n        if (BFD_RELOC_ALPHA_DTPREL64 < bVar3) {\nLAB_0004dea3:\n          if (fixP->fx_addsy == (symbolS *)0x0) {\n            return;\n          }\n          S_SET_THREAD_LOCAL(fixP->fx_addsy);\n          return;\n        }\n        if (bVar3 < BFD_RELOC_ALPHA_DTPMOD64) {\n          if (BFD_RELOC_ALPHA_BOH < bVar3) goto LAB_0004dea3;\n          if (bVar3 < BFD_RELOC_ALPHA_NOP) {\n            return;\n          }\n        }\n        else if (bVar3 == BFD_RELOC_ALPHA_GOTDTPREL16) goto LAB_0004dea3;\n      }" { (if_statement "if (BFD_RELOC_ALPHA_DTPREL64 < bVar3) {\nLAB_0004dea3:\n          if (fixP->fx_addsy == (symbolS *)0x0) {\n            return;\n          }\n          S_SET_THREAD_LOCAL(fixP->fx_addsy);\n          return;\n        }" if (parenthesized_expression "(BFD_RELOC_ALPHA_DTPREL64 < bVar3)" ( (binary_expression "BFD_RELOC_ALPHA_DTPREL64 < bVar3" identifier < identifier) )) (compound_statement "{\nLAB_0004dea3:\n          if (fixP->fx_addsy == (symbolS *)0x0) {\n            return;\n          }\n          S_SET_THREAD_LOCAL(fixP->fx_addsy);\n          return;\n        }" { (labeled_statement "LAB_0004dea3:\n          if (fixP->fx_addsy == (symbolS *)0x0) {\n            return;\n          }" statement_identifier : (if_statement "if (fixP->fx_addsy == (symbolS *)0x0) {\n            return;\n          }" if (parenthesized_expression "(fixP->fx_addsy == (symbolS *)0x0)" ( (binary_expression "fixP->fx_addsy == (symbolS *)0x0" (field_expression "fixP->fx_addsy" identifier -> field_identifier) == (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            return;\n          }" { (return_statement "return;" return ;) }))) (expression_statement "S_SET_THREAD_LOCAL(fixP->fx_addsy);" (call_expression "S_SET_THREAD_LOCAL(fixP->fx_addsy)" identifier (argument_list "(fixP->fx_addsy)" ( (field_expression "fixP->fx_addsy" identifier -> field_identifier) ))) ;) (return_statement "return;" return ;) })) (if_statement "if (bVar3 < BFD_RELOC_ALPHA_DTPMOD64) {\n          if (BFD_RELOC_ALPHA_BOH < bVar3) goto LAB_0004dea3;\n          if (bVar3 < BFD_RELOC_ALPHA_NOP) {\n            return;\n          }\n        }\n        else if (bVar3 == BFD_RELOC_ALPHA_GOTDTPREL16) goto LAB_0004dea3;" if (parenthesized_expression "(bVar3 < BFD_RELOC_ALPHA_DTPMOD64)" ( (binary_expression "bVar3 < BFD_RELOC_ALPHA_DTPMOD64" identifier < identifier) )) (compound_statement "{\n          if (BFD_RELOC_ALPHA_BOH < bVar3) goto LAB_0004dea3;\n          if (bVar3 < BFD_RELOC_ALPHA_NOP) {\n            return;\n          }\n        }" { (if_statement "if (BFD_RELOC_ALPHA_BOH < bVar3) goto LAB_0004dea3;" if (parenthesized_expression "(BFD_RELOC_ALPHA_BOH < bVar3)" ( (binary_expression "BFD_RELOC_ALPHA_BOH < bVar3" identifier < identifier) )) (goto_statement "goto LAB_0004dea3;" goto statement_identifier ;)) (if_statement "if (bVar3 < BFD_RELOC_ALPHA_NOP) {\n            return;\n          }" if (parenthesized_expression "(bVar3 < BFD_RELOC_ALPHA_NOP)" ( (binary_expression "bVar3 < BFD_RELOC_ALPHA_NOP" identifier < identifier) )) (compound_statement "{\n            return;\n          }" { (return_statement "return;" return ;) })) }) (else_clause "else if (bVar3 == BFD_RELOC_ALPHA_GOTDTPREL16) goto LAB_0004dea3;" else (if_statement "if (bVar3 == BFD_RELOC_ALPHA_GOTDTPREL16) goto LAB_0004dea3;" if (parenthesized_expression "(bVar3 == BFD_RELOC_ALPHA_GOTDTPREL16)" ( (binary_expression "bVar3 == BFD_RELOC_ALPHA_GOTDTPREL16" identifier == identifier) )) (goto_statement "goto LAB_0004dea3;" goto statement_identifier ;)))) }) (else_clause "else if (BFD_RELOC_ALPHA_TPREL64 < bVar3) {\n        if (bVar3 < BFD_RELOC_MIPS_JMP) goto LAB_0004dea3;\n        if (bVar3 - BFD_RELOC_VTABLE_INHERIT < 2) {\n          return;\n        }\n      }" else (if_statement "if (BFD_RELOC_ALPHA_TPREL64 < bVar3) {\n        if (bVar3 < BFD_RELOC_MIPS_JMP) goto LAB_0004dea3;\n        if (bVar3 - BFD_RELOC_VTABLE_INHERIT < 2) {\n          return;\n        }\n      }" if (parenthesized_expression "(BFD_RELOC_ALPHA_TPREL64 < bVar3)" ( (binary_expression "BFD_RELOC_ALPHA_TPREL64 < bVar3" identifier < identifier) )) (compound_statement "{\n        if (bVar3 < BFD_RELOC_MIPS_JMP) goto LAB_0004dea3;\n        if (bVar3 - BFD_RELOC_VTABLE_INHERIT < 2) {\n          return;\n        }\n      }" { (if_statement "if (bVar3 < BFD_RELOC_MIPS_JMP) goto LAB_0004dea3;" if (parenthesized_expression "(bVar3 < BFD_RELOC_MIPS_JMP)" ( (binary_expression "bVar3 < BFD_RELOC_MIPS_JMP" identifier < identifier) )) (goto_statement "goto LAB_0004dea3;" goto statement_identifier ;)) (if_statement "if (bVar3 - BFD_RELOC_VTABLE_INHERIT < 2) {\n          return;\n        }" if (parenthesized_expression "(bVar3 - BFD_RELOC_VTABLE_INHERIT < 2)" ( (binary_expression "bVar3 - BFD_RELOC_VTABLE_INHERIT < 2" (binary_expression "bVar3 - BFD_RELOC_VTABLE_INHERIT" identifier - identifier) < number_literal) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) })))) (goto_statement "goto LAB_0004dd90;" goto statement_identifier ;) })) (if_statement "if (BFD_RELOC_GPREL32 < bVar3) {\n      if (bVar3 == BFD_RELOC_ALPHA_GPDISP_LO16) {\n        uVar15 = (uint)(short)uVar2;\n        *(undefined4 *)&fixP->fx_offset = 0;\n        *(undefined4 *)((int)&fixP->fx_offset + 4) = 0;\n        *(byte *)fixP = *(byte *)fixP | 0x20;\n        uVar18 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        psVar12 = section_symbol(seg);\n        fixP->fx_addsy = psVar12;\n        number_to_chars_littleendian(pcVar17,CONCAT44(uVar18,uVar15),2);\n        if ((fixP->fx_addsy != (symbolS *)0x0) ||\n           ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0)) {\n          return;\n        }\n        bVar3 = fixP->fx_r_type;\n        pcVar17 = (char *)dcgettext(0,"type %d reloc done?\n",5);\n        as_warn_where(fixP->fx_file,fixP->fx_line,pcVar17,bVar3);\n        goto LAB_0004de31;\n      }\n      if (bVar3 < BFD_RELOC_ALPHA_GPDISP) {\n        if (bVar3 == BFD_RELOC_ALPHA_GPDISP_HI16) {\n          pfVar4 = fixP->fx_next;\n          if (pfVar4 != (fix *)0x0) {\n            pfVar5 = pfVar4->fx_frag;\n            uVar18 = pfVar4->fx_where;\n            aVar8 = pfVar5->fr_address;\n            uVar10 = uVar18 + (int)pfVar5->fr_address;\n            iVar6 = *(int *)((int)&pfVar5->fr_address + 4);\n            aVar9 = pfVar1->fr_address;\n            uVar11 = uVar10 - (int)pfVar1->fr_address;\n            iVar7 = *(int *)((int)&pfVar1->fr_address + 4);\n            *(uint *)&fixP->fx_offset = uVar11 - uVar15;\n            *(uint *)((int)&fixP->fx_offset + 4) =\n                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15);\n          }\n          fixP->fx_r_type = BFD_RELOC_ALPHA_GPDISP;\n          uVar15 = (uint)(short)uVar2;\n          uVar18 = (iVar14 - ((int)uVar15 >> 0x1f)) - (uint)(uVar2 < uVar15);\n          uVar15 = uVar2 - uVar15 >> 0x10 | uVar18 * 0x10000;\n          uVar18 = uVar18 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (BFD_RELOC_ALPHA_LITERAL < bVar3) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }" if (parenthesized_expression "(BFD_RELOC_GPREL32 < bVar3)" ( (binary_expression "BFD_RELOC_GPREL32 < bVar3" identifier < identifier) )) (compound_statement "{\n      if (bVar3 == BFD_RELOC_ALPHA_GPDISP_LO16) {\n        uVar15 = (uint)(short)uVar2;\n        *(undefined4 *)&fixP->fx_offset = 0;\n        *(undefined4 *)((int)&fixP->fx_offset + 4) = 0;\n        *(byte *)fixP = *(byte *)fixP | 0x20;\n        uVar18 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        psVar12 = section_symbol(seg);\n        fixP->fx_addsy = psVar12;\n        number_to_chars_littleendian(pcVar17,CONCAT44(uVar18,uVar15),2);\n        if ((fixP->fx_addsy != (symbolS *)0x0) ||\n           ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0)) {\n          return;\n        }\n        bVar3 = fixP->fx_r_type;\n        pcVar17 = (char *)dcgettext(0,"type %d reloc done?\n",5);\n        as_warn_where(fixP->fx_file,fixP->fx_line,pcVar17,bVar3);\n        goto LAB_0004de31;\n      }\n      if (bVar3 < BFD_RELOC_ALPHA_GPDISP) {\n        if (bVar3 == BFD_RELOC_ALPHA_GPDISP_HI16) {\n          pfVar4 = fixP->fx_next;\n          if (pfVar4 != (fix *)0x0) {\n            pfVar5 = pfVar4->fx_frag;\n            uVar18 = pfVar4->fx_where;\n            aVar8 = pfVar5->fr_address;\n            uVar10 = uVar18 + (int)pfVar5->fr_address;\n            iVar6 = *(int *)((int)&pfVar5->fr_address + 4);\n            aVar9 = pfVar1->fr_address;\n            uVar11 = uVar10 - (int)pfVar1->fr_address;\n            iVar7 = *(int *)((int)&pfVar1->fr_address + 4);\n            *(uint *)&fixP->fx_offset = uVar11 - uVar15;\n            *(uint *)((int)&fixP->fx_offset + 4) =\n                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15);\n          }\n          fixP->fx_r_type = BFD_RELOC_ALPHA_GPDISP;\n          uVar15 = (uint)(short)uVar2;\n          uVar18 = (iVar14 - ((int)uVar15 >> 0x1f)) - (uint)(uVar2 < uVar15);\n          uVar15 = uVar2 - uVar15 >> 0x10 | uVar18 * 0x10000;\n          uVar18 = uVar18 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (BFD_RELOC_ALPHA_LITERAL < bVar3) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }" { (if_statement "if (bVar3 == BFD_RELOC_ALPHA_GPDISP_LO16) {\n        uVar15 = (uint)(short)uVar2;\n        *(undefined4 *)&fixP->fx_offset = 0;\n        *(undefined4 *)((int)&fixP->fx_offset + 4) = 0;\n        *(byte *)fixP = *(byte *)fixP | 0x20;\n        uVar18 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        psVar12 = section_symbol(seg);\n        fixP->fx_addsy = psVar12;\n        number_to_chars_littleendian(pcVar17,CONCAT44(uVar18,uVar15),2);\n        if ((fixP->fx_addsy != (symbolS *)0x0) ||\n           ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0)) {\n          return;\n        }\n        bVar3 = fixP->fx_r_type;\n        pcVar17 = (char *)dcgettext(0,"type %d reloc done?\n",5);\n        as_warn_where(fixP->fx_file,fixP->fx_line,pcVar17,bVar3);\n        goto LAB_0004de31;\n      }" if (parenthesized_expression "(bVar3 == BFD_RELOC_ALPHA_GPDISP_LO16)" ( (binary_expression "bVar3 == BFD_RELOC_ALPHA_GPDISP_LO16" identifier == identifier) )) (compound_statement "{\n        uVar15 = (uint)(short)uVar2;\n        *(undefined4 *)&fixP->fx_offset = 0;\n        *(undefined4 *)((int)&fixP->fx_offset + 4) = 0;\n        *(byte *)fixP = *(byte *)fixP | 0x20;\n        uVar18 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        psVar12 = section_symbol(seg);\n        fixP->fx_addsy = psVar12;\n        number_to_chars_littleendian(pcVar17,CONCAT44(uVar18,uVar15),2);\n        if ((fixP->fx_addsy != (symbolS *)0x0) ||\n           ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0)) {\n          return;\n        }\n        bVar3 = fixP->fx_r_type;\n        pcVar17 = (char *)dcgettext(0,"type %d reloc done?\n",5);\n        as_warn_where(fixP->fx_file,fixP->fx_line,pcVar17,bVar3);\n        goto LAB_0004de31;\n      }" { (expression_statement "uVar15 = (uint)(short)uVar2;" (assignment_expression "uVar15 = (uint)(short)uVar2" identifier = (cast_expression "(uint)(short)uVar2" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(short)uVar2" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) identifier))) ;) (expression_statement "*(undefined4 *)&fixP->fx_offset = 0;" (assignment_expression "*(undefined4 *)&fixP->fx_offset = 0" (pointer_expression "*(undefined4 *)&fixP->fx_offset" * (cast_expression "(undefined4 *)&fixP->fx_offset" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&fixP->fx_offset" & (field_expression "fixP->fx_offset" identifier -> field_identifier)))) = number_literal) ;) (expression_statement "*(undefined4 *)((int)&fixP->fx_offset + 4) = 0;" (assignment_expression "*(undefined4 *)((int)&fixP->fx_offset + 4) = 0" (pointer_expression "*(undefined4 *)((int)&fixP->fx_offset + 4)" * (cast_expression "(undefined4 *)((int)&fixP->fx_offset + 4)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&fixP->fx_offset + 4)" ( (binary_expression "(int)&fixP->fx_offset + 4" (cast_expression "(int)&fixP->fx_offset" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&fixP->fx_offset" & (field_expression "fixP->fx_offset" identifier -> field_identifier))) + number_literal) )))) = number_literal) ;) (expression_statement "*(byte *)fixP = *(byte *)fixP | 0x20;" (assignment_expression "*(byte *)fixP = *(byte *)fixP | 0x20" (pointer_expression "*(byte *)fixP" * (cast_expression "(byte *)fixP" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "*(byte *)fixP | 0x20" (pointer_expression "*(byte *)fixP" * (cast_expression "(byte *)fixP" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) | number_literal)) ;) (expression_statement "uVar18 = (int)uVar15 >> 0x1f;" (assignment_expression "uVar18 = (int)uVar15 >> 0x1f" identifier = (binary_expression "(int)uVar15 >> 0x1f" (cast_expression "(int)uVar15" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (labeled_statement "LAB_0004dcec:\n        psVar12 = section_symbol(seg);" statement_identifier : (expression_statement "psVar12 = section_symbol(seg);" (assignment_expression "psVar12 = section_symbol(seg)" identifier = (call_expression "section_symbol(seg)" identifier (argument_list "(seg)" ( identifier )))) ;)) (expression_statement "fixP->fx_addsy = psVar12;" (assignment_expression "fixP->fx_addsy = psVar12" (field_expression "fixP->fx_addsy" identifier -> field_identifier) = identifier) ;) (expression_statement "number_to_chars_littleendian(pcVar17,CONCAT44(uVar18,uVar15),2);" (call_expression "number_to_chars_littleendian(pcVar17,CONCAT44(uVar18,uVar15),2)" identifier (argument_list "(pcVar17,CONCAT44(uVar18,uVar15),2)" ( identifier , (call_expression "CONCAT44(uVar18,uVar15)" identifier (argument_list "(uVar18,uVar15)" ( identifier , identifier ))) , number_literal ))) ;) (if_statement "if ((fixP->fx_addsy != (symbolS *)0x0) ||\n           ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0)) {\n          return;\n        }" if (parenthesized_expression "((fixP->fx_addsy != (symbolS *)0x0) ||\n           ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0))" ( (binary_expression "(fixP->fx_addsy != (symbolS *)0x0) ||\n           ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0)" (parenthesized_expression "(fixP->fx_addsy != (symbolS *)0x0)" ( (binary_expression "fixP->fx_addsy != (symbolS *)0x0" (field_expression "fixP->fx_addsy" identifier -> field_identifier) != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) || (parenthesized_expression "((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0)" ( (binary_expression "(undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0" (call_expression "(undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1)" (parenthesized_expression "(undefined1  [76])" ( (subscript_expression "undefined1  [76]" identifier [ number_literal ]) )) (argument_list "((undefined1  [76])*fixP & (undefined1  [76])0x1)" ( (binary_expression "(undefined1  [76])*fixP & (undefined1  [76])0x1" (binary_expression "(undefined1  [76])*fixP" (parenthesized_expression "(undefined1  [76])" ( (subscript_expression "undefined1  [76]" identifier [ number_literal ]) )) * identifier) & (cast_expression "(undefined1  [76])0x1" ( (type_descriptor "undefined1  [76]" type_identifier (abstract_array_declarator "[76]" [ number_literal ])) ) number_literal)) ))) != (cast_expression "(undefined1  [76])0x0" ( (type_descriptor "undefined1  [76]" type_identifier (abstract_array_declarator "[76]" [ number_literal ])) ) number_literal)) ))) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) (expression_statement "bVar3 = fixP->fx_r_type;" (assignment_expression "bVar3 = fixP->fx_r_type" identifier = (field_expression "fixP->fx_r_type" identifier -> field_identifier)) ;) (expression_statement "pcVar17 = (char *)dcgettext(0,"type %d reloc done?\n",5);" (assignment_expression "pcVar17 = (char *)dcgettext(0,"type %d reloc done?\n",5)" identifier = (cast_expression "(char *)dcgettext(0,"type %d reloc done?\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"type %d reloc done?\n",5)" identifier (argument_list "(0,"type %d reloc done?\n",5)" ( number_literal , (string_literal ""type %d reloc done?\n"" " string_content escape_sequence ") , number_literal ))))) ;) (expression_statement "as_warn_where(fixP->fx_file,fixP->fx_line,pcVar17,bVar3);" (call_expression "as_warn_where(fixP->fx_file,fixP->fx_line,pcVar17,bVar3)" identifier (argument_list "(fixP->fx_file,fixP->fx_line,pcVar17,bVar3)" ( (field_expression "fixP->fx_file" identifier -> field_identifier) , (field_expression "fixP->fx_line" identifier -> field_identifier) , identifier , identifier ))) ;) (goto_statement "goto LAB_0004de31;" goto statement_identifier ;) })) (if_statement "if (bVar3 < BFD_RELOC_ALPHA_GPDISP) {\n        if (bVar3 == BFD_RELOC_ALPHA_GPDISP_HI16) {\n          pfVar4 = fixP->fx_next;\n          if (pfVar4 != (fix *)0x0) {\n            pfVar5 = pfVar4->fx_frag;\n            uVar18 = pfVar4->fx_where;\n            aVar8 = pfVar5->fr_address;\n            uVar10 = uVar18 + (int)pfVar5->fr_address;\n            iVar6 = *(int *)((int)&pfVar5->fr_address + 4);\n            aVar9 = pfVar1->fr_address;\n            uVar11 = uVar10 - (int)pfVar1->fr_address;\n            iVar7 = *(int *)((int)&pfVar1->fr_address + 4);\n            *(uint *)&fixP->fx_offset = uVar11 - uVar15;\n            *(uint *)((int)&fixP->fx_offset + 4) =\n                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15);\n          }\n          fixP->fx_r_type = BFD_RELOC_ALPHA_GPDISP;\n          uVar15 = (uint)(short)uVar2;\n          uVar18 = (iVar14 - ((int)uVar15 >> 0x1f)) - (uint)(uVar2 < uVar15);\n          uVar15 = uVar2 - uVar15 >> 0x10 | uVar18 * 0x10000;\n          uVar18 = uVar18 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (BFD_RELOC_ALPHA_LITERAL < bVar3) {\n        return;\n      }" if (parenthesized_expression "(bVar3 < BFD_RELOC_ALPHA_GPDISP)" ( (binary_expression "bVar3 < BFD_RELOC_ALPHA_GPDISP" identifier < identifier) )) (compound_statement "{\n        if (bVar3 == BFD_RELOC_ALPHA_GPDISP_HI16) {\n          pfVar4 = fixP->fx_next;\n          if (pfVar4 != (fix *)0x0) {\n            pfVar5 = pfVar4->fx_frag;\n            uVar18 = pfVar4->fx_where;\n            aVar8 = pfVar5->fr_address;\n            uVar10 = uVar18 + (int)pfVar5->fr_address;\n            iVar6 = *(int *)((int)&pfVar5->fr_address + 4);\n            aVar9 = pfVar1->fr_address;\n            uVar11 = uVar10 - (int)pfVar1->fr_address;\n            iVar7 = *(int *)((int)&pfVar1->fr_address + 4);\n            *(uint *)&fixP->fx_offset = uVar11 - uVar15;\n            *(uint *)((int)&fixP->fx_offset + 4) =\n                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15);\n          }\n          fixP->fx_r_type = BFD_RELOC_ALPHA_GPDISP;\n          uVar15 = (uint)(short)uVar2;\n          uVar18 = (iVar14 - ((int)uVar15 >> 0x1f)) - (uint)(uVar2 < uVar15);\n          uVar15 = uVar2 - uVar15 >> 0x10 | uVar18 * 0x10000;\n          uVar18 = uVar18 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }" { (if_statement "if (bVar3 == BFD_RELOC_ALPHA_GPDISP_HI16) {\n          pfVar4 = fixP->fx_next;\n          if (pfVar4 != (fix *)0x0) {\n            pfVar5 = pfVar4->fx_frag;\n            uVar18 = pfVar4->fx_where;\n            aVar8 = pfVar5->fr_address;\n            uVar10 = uVar18 + (int)pfVar5->fr_address;\n            iVar6 = *(int *)((int)&pfVar5->fr_address + 4);\n            aVar9 = pfVar1->fr_address;\n            uVar11 = uVar10 - (int)pfVar1->fr_address;\n            iVar7 = *(int *)((int)&pfVar1->fr_address + 4);\n            *(uint *)&fixP->fx_offset = uVar11 - uVar15;\n            *(uint *)((int)&fixP->fx_offset + 4) =\n                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15);\n          }\n          fixP->fx_r_type = BFD_RELOC_ALPHA_GPDISP;\n          uVar15 = (uint)(short)uVar2;\n          uVar18 = (iVar14 - ((int)uVar15 >> 0x1f)) - (uint)(uVar2 < uVar15);\n          uVar15 = uVar2 - uVar15 >> 0x10 | uVar18 * 0x10000;\n          uVar18 = uVar18 >> 0x10;\n          goto LAB_0004dcec;\n        }" if (parenthesized_expression "(bVar3 == BFD_RELOC_ALPHA_GPDISP_HI16)" ( (binary_expression "bVar3 == BFD_RELOC_ALPHA_GPDISP_HI16" identifier == identifier) )) (compound_statement "{\n          pfVar4 = fixP->fx_next;\n          if (pfVar4 != (fix *)0x0) {\n            pfVar5 = pfVar4->fx_frag;\n            uVar18 = pfVar4->fx_where;\n            aVar8 = pfVar5->fr_address;\n            uVar10 = uVar18 + (int)pfVar5->fr_address;\n            iVar6 = *(int *)((int)&pfVar5->fr_address + 4);\n            aVar9 = pfVar1->fr_address;\n            uVar11 = uVar10 - (int)pfVar1->fr_address;\n            iVar7 = *(int *)((int)&pfVar1->fr_address + 4);\n            *(uint *)&fixP->fx_offset = uVar11 - uVar15;\n            *(uint *)((int)&fixP->fx_offset + 4) =\n                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15);\n          }\n          fixP->fx_r_type = BFD_RELOC_ALPHA_GPDISP;\n          uVar15 = (uint)(short)uVar2;\n          uVar18 = (iVar14 - ((int)uVar15 >> 0x1f)) - (uint)(uVar2 < uVar15);\n          uVar15 = uVar2 - uVar15 >> 0x10 | uVar18 * 0x10000;\n          uVar18 = uVar18 >> 0x10;\n          goto LAB_0004dcec;\n        }" { (expression_statement "pfVar4 = fixP->fx_next;" (assignment_expression "pfVar4 = fixP->fx_next" identifier = (field_expression "fixP->fx_next" identifier -> field_identifier)) ;) (if_statement "if (pfVar4 != (fix *)0x0) {\n            pfVar5 = pfVar4->fx_frag;\n            uVar18 = pfVar4->fx_where;\n            aVar8 = pfVar5->fr_address;\n            uVar10 = uVar18 + (int)pfVar5->fr_address;\n            iVar6 = *(int *)((int)&pfVar5->fr_address + 4);\n            aVar9 = pfVar1->fr_address;\n            uVar11 = uVar10 - (int)pfVar1->fr_address;\n            iVar7 = *(int *)((int)&pfVar1->fr_address + 4);\n            *(uint *)&fixP->fx_offset = uVar11 - uVar15;\n            *(uint *)((int)&fixP->fx_offset + 4) =\n                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15);\n          }" if (parenthesized_expression "(pfVar4 != (fix *)0x0)" ( (binary_expression "pfVar4 != (fix *)0x0" identifier != (cast_expression "(fix *)0x0" ( (type_descriptor "fix *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n            pfVar5 = pfVar4->fx_frag;\n            uVar18 = pfVar4->fx_where;\n            aVar8 = pfVar5->fr_address;\n            uVar10 = uVar18 + (int)pfVar5->fr_address;\n            iVar6 = *(int *)((int)&pfVar5->fr_address + 4);\n            aVar9 = pfVar1->fr_address;\n            uVar11 = uVar10 - (int)pfVar1->fr_address;\n            iVar7 = *(int *)((int)&pfVar1->fr_address + 4);\n            *(uint *)&fixP->fx_offset = uVar11 - uVar15;\n            *(uint *)((int)&fixP->fx_offset + 4) =\n                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15);\n          }" { (expression_statement "pfVar5 = pfVar4->fx_frag;" (assignment_expression "pfVar5 = pfVar4->fx_frag" identifier = (field_expression "pfVar4->fx_frag" identifier -> field_identifier)) ;) (expression_statement "uVar18 = pfVar4->fx_where;" (assignment_expression "uVar18 = pfVar4->fx_where" identifier = (field_expression "pfVar4->fx_where" identifier -> field_identifier)) ;) (expression_statement "aVar8 = pfVar5->fr_address;" (assignment_expression "aVar8 = pfVar5->fr_address" identifier = (field_expression "pfVar5->fr_address" identifier -> field_identifier)) ;) (expression_statement "uVar10 = uVar18 + (int)pfVar5->fr_address;" (assignment_expression "uVar10 = uVar18 + (int)pfVar5->fr_address" identifier = (binary_expression "uVar18 + (int)pfVar5->fr_address" identifier + (cast_expression "(int)pfVar5->fr_address" ( (type_descriptor "int" primitive_type) ) (field_expression "pfVar5->fr_address" identifier -> field_identifier)))) ;) (expression_statement "iVar6 = *(int *)((int)&pfVar5->fr_address + 4);" (assignment_expression "iVar6 = *(int *)((int)&pfVar5->fr_address + 4)" identifier = (pointer_expression "*(int *)((int)&pfVar5->fr_address + 4)" * (cast_expression "(int *)((int)&pfVar5->fr_address + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pfVar5->fr_address + 4)" ( (binary_expression "(int)&pfVar5->fr_address + 4" (cast_expression "(int)&pfVar5->fr_address" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pfVar5->fr_address" & (field_expression "pfVar5->fr_address" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "aVar9 = pfVar1->fr_address;" (assignment_expression "aVar9 = pfVar1->fr_address" identifier = (field_expression "pfVar1->fr_address" identifier -> field_identifier)) ;) (expression_statement "uVar11 = uVar10 - (int)pfVar1->fr_address;" (assignment_expression "uVar11 = uVar10 - (int)pfVar1->fr_address" identifier = (binary_expression "uVar10 - (int)pfVar1->fr_address" identifier - (cast_expression "(int)pfVar1->fr_address" ( (type_descriptor "int" primitive_type) ) (field_expression "pfVar1->fr_address" identifier -> field_identifier)))) ;) (expression_statement "iVar7 = *(int *)((int)&pfVar1->fr_address + 4);" (assignment_expression "iVar7 = *(int *)((int)&pfVar1->fr_address + 4)" identifier = (pointer_expression "*(int *)((int)&pfVar1->fr_address + 4)" * (cast_expression "(int *)((int)&pfVar1->fr_address + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&pfVar1->fr_address + 4)" ( (binary_expression "(int)&pfVar1->fr_address + 4" (cast_expression "(int)&pfVar1->fr_address" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&pfVar1->fr_address" & (field_expression "pfVar1->fr_address" identifier -> field_identifier))) + number_literal) ))))) ;) (expression_statement "*(uint *)&fixP->fx_offset = uVar11 - uVar15;" (assignment_expression "*(uint *)&fixP->fx_offset = uVar11 - uVar15" (pointer_expression "*(uint *)&fixP->fx_offset" * (cast_expression "(uint *)&fixP->fx_offset" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&fixP->fx_offset" & (field_expression "fixP->fx_offset" identifier -> field_identifier)))) = (binary_expression "uVar11 - uVar15" identifier - identifier)) ;) (expression_statement "*(uint *)((int)&fixP->fx_offset + 4) =\n                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15);" (assignment_expression "*(uint *)((int)&fixP->fx_offset + 4) =\n                 ((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15)" (pointer_expression "*(uint *)((int)&fixP->fx_offset + 4)" * (cast_expression "(uint *)((int)&fixP->fx_offset + 4)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((int)&fixP->fx_offset + 4)" ( (binary_expression "(int)&fixP->fx_offset + 4" (cast_expression "(int)&fixP->fx_offset" ( (type_descriptor "int" primitive_type) ) (pointer_expression "&fixP->fx_offset" & (field_expression "fixP->fx_offset" identifier -> field_identifier))) + number_literal) )))) = (binary_expression "((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar11 < uVar15)" (parenthesized_expression "((((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f))" ( (binary_expression "(((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)) - ((int)uVar15 >> 0x1f)" (parenthesized_expression "(((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9))" ( (binary_expression "((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7) -\n                  (uint)(uVar10 < (uint)aVar9)" (parenthesized_expression "((((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7)" ( (binary_expression "(((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)) - iVar7" (parenthesized_expression "(((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8))" ( (binary_expression "((int)uVar18 >> 0x1f) + iVar6 + (uint)CARRY4(uVar18,(uint)aVar8)" (binary_expression "((int)uVar18 >> 0x1f) + iVar6" (parenthesized_expression "((int)uVar18 >> 0x1f)" ( (binary_expression "(int)uVar18 >> 0x1f" (cast_expression "(int)uVar18" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) + identifier) + (cast_expression "(uint)CARRY4(uVar18,(uint)aVar8)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar18,(uint)aVar8)" identifier (argument_list "(uVar18,(uint)aVar8)" ( identifier , (cast_expression "(uint)aVar8" ( (type_descriptor "uint" type_identifier) ) identifier) ))))) )) - identifier) )) - (call_expression "(uint)(uVar10 < (uint)aVar9)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar10 < (uint)aVar9)" ( (binary_expression "uVar10 < (uint)aVar9" identifier < (cast_expression "(uint)aVar9" ( (type_descriptor "uint" type_identifier) ) identifier)) )))) )) - (parenthesized_expression "((int)uVar15 >> 0x1f)" ( (binary_expression "(int)uVar15 >> 0x1f" (cast_expression "(int)uVar15" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) ))) )) - (call_expression "(uint)(uVar11 < uVar15)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar11 < uVar15)" ( (binary_expression "uVar11 < uVar15" identifier < identifier) ))))) ;) })) (expression_statement "fixP->fx_r_type = BFD_RELOC_ALPHA_GPDISP;" (assignment_expression "fixP->fx_r_type = BFD_RELOC_ALPHA_GPDISP" (field_expression "fixP->fx_r_type" identifier -> field_identifier) = identifier) ;) (expression_statement "uVar15 = (uint)(short)uVar2;" (assignment_expression "uVar15 = (uint)(short)uVar2" identifier = (cast_expression "(uint)(short)uVar2" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(short)uVar2" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) identifier))) ;) (expression_statement "uVar18 = (iVar14 - ((int)uVar15 >> 0x1f)) - (uint)(uVar2 < uVar15);" (assignment_expression "uVar18 = (iVar14 - ((int)uVar15 >> 0x1f)) - (uint)(uVar2 < uVar15)" identifier = (binary_expression "(iVar14 - ((int)uVar15 >> 0x1f)) - (uint)(uVar2 < uVar15)" (parenthesized_expression "(iVar14 - ((int)uVar15 >> 0x1f))" ( (binary_expression "iVar14 - ((int)uVar15 >> 0x1f)" identifier - (parenthesized_expression "((int)uVar15 >> 0x1f)" ( (binary_expression "(int)uVar15 >> 0x1f" (cast_expression "(int)uVar15" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) ))) )) - (call_expression "(uint)(uVar2 < uVar15)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar2 < uVar15)" ( (binary_expression "uVar2 < uVar15" identifier < identifier) ))))) ;) (expression_statement "uVar15 = uVar2 - uVar15 >> 0x10 | uVar18 * 0x10000;" (assignment_expression "uVar15 = uVar2 - uVar15 >> 0x10 | uVar18 * 0x10000" identifier = (binary_expression "uVar2 - uVar15 >> 0x10 | uVar18 * 0x10000" (binary_expression "uVar2 - uVar15 >> 0x10" (binary_expression "uVar2 - uVar15" identifier - identifier) >> number_literal) | (binary_expression "uVar18 * 0x10000" identifier * number_literal))) ;) (expression_statement "uVar18 = uVar18 >> 0x10;" (assignment_expression "uVar18 = uVar18 >> 0x10" identifier = (binary_expression "uVar18 >> 0x10" identifier >> number_literal)) ;) (goto_statement "goto LAB_0004dcec;" goto statement_identifier ;) })) }) (else_clause "else if (BFD_RELOC_ALPHA_LITERAL < bVar3) {\n        return;\n      }" else (if_statement "if (BFD_RELOC_ALPHA_LITERAL < bVar3) {\n        return;\n      }" if (parenthesized_expression "(BFD_RELOC_ALPHA_LITERAL < bVar3)" ( (binary_expression "BFD_RELOC_ALPHA_LITERAL < bVar3" identifier < identifier) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) })))) (goto_statement "goto LAB_0004dd90;" goto statement_identifier ;) })) (if_statement "if (BFD_RELOC_LO10 < bVar3) {\n      return;\n    }" if (parenthesized_expression "(BFD_RELOC_LO10 < bVar3)" ( (binary_expression "BFD_RELOC_LO10 < bVar3" identifier < identifier) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (if_statement "if (bVar3 == BFD_RELOC_32) {\n      if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n          (undefined1  [76])0x0) {\n        fixP->fx_r_type = BFD_RELOC_32_PCREL;\n        return;\n      }\n      iVar14 = 4;\nLAB_0004de57:\n      if (fixP->fx_addsy != (symbolS *)0x0) {\n        return;\n      }\n      number_to_chars_littleendian(pcVar17,*valP,iVar14);\n      goto LAB_0004de31;\n    }" if (parenthesized_expression "(bVar3 == BFD_RELOC_32)" ( (binary_expression "bVar3 == BFD_RELOC_32" identifier == identifier) )) (compound_statement "{\n      if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n          (undefined1  [76])0x0) {\n        fixP->fx_r_type = BFD_RELOC_32_PCREL;\n        return;\n      }\n      iVar14 = 4;\nLAB_0004de57:\n      if (fixP->fx_addsy != (symbolS *)0x0) {\n        return;\n      }\n      number_to_chars_littleendian(pcVar17,*valP,iVar14);\n      goto LAB_0004de31;\n    }" { (if_statement "if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n          (undefined1  [76])0x0) {\n        fixP->fx_r_type = BFD_RELOC_32_PCREL;\n        return;\n      }" if (parenthesized_expression "((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n          (undefined1  [76])0x0)" ( (binary_expression "(undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n          (undefined1  [76])0x0" (call_expression "(undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1)" (parenthesized_expression "(undefined1  [76])" ( (subscript_expression "undefined1  [76]" identifier [ number_literal ]) )) (argument_list "((undefined1  [76])*fixP & (undefined1  [76])0x1)" ( (binary_expression "(undefined1  [76])*fixP & (undefined1  [76])0x1" (binary_expression "(undefined1  [76])*fixP" (parenthesized_expression "(undefined1  [76])" ( (subscript_expression "undefined1  [76]" identifier [ number_literal ]) )) * identifier) & (cast_expression "(undefined1  [76])0x1" ( (type_descriptor "undefined1  [76]" type_identifier (abstract_array_declarator "[76]" [ number_literal ])) ) number_literal)) ))) != (cast_expression "(undefined1  [76])0x0" ( (type_descriptor "undefined1  [76]" type_identifier (abstract_array_declarator "[76]" [ number_literal ])) ) number_literal)) )) (compound_statement "{\n        fixP->fx_r_type = BFD_RELOC_32_PCREL;\n        return;\n      }" { (expression_statement "fixP->fx_r_type = BFD_RELOC_32_PCREL;" (assignment_expression "fixP->fx_r_type = BFD_RELOC_32_PCREL" (field_expression "fixP->fx_r_type" identifier -> field_identifier) = identifier) ;) (return_statement "return;" return ;) })) (expression_statement "iVar14 = 4;" (assignment_expression "iVar14 = 4" identifier = number_literal) ;) (labeled_statement "LAB_0004de57:\n      if (fixP->fx_addsy != (symbolS *)0x0) {\n        return;\n      }" statement_identifier : (if_statement "if (fixP->fx_addsy != (symbolS *)0x0) {\n        return;\n      }" if (parenthesized_expression "(fixP->fx_addsy != (symbolS *)0x0)" ( (binary_expression "fixP->fx_addsy != (symbolS *)0x0" (field_expression "fixP->fx_addsy" identifier -> field_identifier) != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) }))) (expression_statement "number_to_chars_littleendian(pcVar17,*valP,iVar14);" (call_expression "number_to_chars_littleendian(pcVar17,*valP,iVar14)" identifier (argument_list "(pcVar17,*valP,iVar14)" ( identifier , (pointer_expression "*valP" * identifier) , identifier ))) ;) (goto_statement "goto LAB_0004de31;" goto statement_identifier ;) })) (if_statement "if (bVar3 < BFD_RELOC_26) {\n      if (bVar3 == BFD_RELOC_64) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_64_PCREL;\n          return;\n        }\n        iVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (bVar3 == BFD_RELOC_16) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_16_PCREL;\n          return;\n        }\n        iVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (bVar3 == BFD_RELOC_23_PCREL_S2) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          return;\n        }\n        if (fixP->fx_addsy != (symbolS *)0x0) {\n          return;\n        }\n        uVar15 = bfd_getl32(pcVar17);\n        uVar15 = uVar2 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }" if (parenthesized_expression "(bVar3 < BFD_RELOC_26)" ( (binary_expression "bVar3 < BFD_RELOC_26" identifier < identifier) )) (compound_statement "{\n      if (bVar3 == BFD_RELOC_64) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_64_PCREL;\n          return;\n        }\n        iVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }" { (if_statement "if (bVar3 == BFD_RELOC_64) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_64_PCREL;\n          return;\n        }\n        iVar14 = 8;\n        goto LAB_0004de57;\n      }" if (parenthesized_expression "(bVar3 == BFD_RELOC_64)" ( (binary_expression "bVar3 == BFD_RELOC_64" identifier == identifier) )) (compound_statement "{\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_64_PCREL;\n          return;\n        }\n        iVar14 = 8;\n        goto LAB_0004de57;\n      }" { (if_statement "if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_64_PCREL;\n          return;\n        }" if (parenthesized_expression "((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0)" ( (binary_expression "(undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0" (call_expression "(undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1)" (parenthesized_expression "(undefined1  [76])" ( (subscript_expression "undefined1  [76]" identifier [ number_literal ]) )) (argument_list "((undefined1  [76])*fixP & (undefined1  [76])0x1)" ( (binary_expression "(undefined1  [76])*fixP & (undefined1  [76])0x1" (binary_expression "(undefined1  [76])*fixP" (parenthesized_expression "(undefined1  [76])" ( (subscript_expression "undefined1  [76]" identifier [ number_literal ]) )) * identifier) & (cast_expression "(undefined1  [76])0x1" ( (type_descriptor "undefined1  [76]" type_identifier (abstract_array_declarator "[76]" [ number_literal ])) ) number_literal)) ))) != (cast_expression "(undefined1  [76])0x0" ( (type_descriptor "undefined1  [76]" type_identifier (abstract_array_declarator "[76]" [ number_literal ])) ) number_literal)) )) (compound_statement "{\n          fixP->fx_r_type = BFD_RELOC_64_PCREL;\n          return;\n        }" { (expression_statement "fixP->fx_r_type = BFD_RELOC_64_PCREL;" (assignment_expression "fixP->fx_r_type = BFD_RELOC_64_PCREL" (field_expression "fixP->fx_r_type" identifier -> field_identifier) = identifier) ;) (return_statement "return;" return ;) })) (expression_statement "iVar14 = 8;" (assignment_expression "iVar14 = 8" identifier = number_literal) ;) (goto_statement "goto LAB_0004de57;" goto statement_identifier ;) })) }) (else_clause "else {\n      if (bVar3 == BFD_RELOC_16) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_16_PCREL;\n          return;\n        }\n        iVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (bVar3 == BFD_RELOC_23_PCREL_S2) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          return;\n        }\n        if (fixP->fx_addsy != (symbolS *)0x0) {\n          return;\n        }\n        uVar15 = bfd_getl32(pcVar17);\n        uVar15 = uVar2 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }" else (compound_statement "{\n      if (bVar3 == BFD_RELOC_16) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_16_PCREL;\n          return;\n        }\n        iVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (bVar3 == BFD_RELOC_23_PCREL_S2) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          return;\n        }\n        if (fixP->fx_addsy != (symbolS *)0x0) {\n          return;\n        }\n        uVar15 = bfd_getl32(pcVar17);\n        uVar15 = uVar2 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }" { (if_statement "if (bVar3 == BFD_RELOC_16) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_16_PCREL;\n          return;\n        }\n        iVar14 = 2;\n        goto LAB_0004de57;\n      }" if (parenthesized_expression "(bVar3 == BFD_RELOC_16)" ( (binary_expression "bVar3 == BFD_RELOC_16" identifier == identifier) )) (compound_statement "{\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_16_PCREL;\n          return;\n        }\n        iVar14 = 2;\n        goto LAB_0004de57;\n      }" { (if_statement "if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          fixP->fx_r_type = BFD_RELOC_16_PCREL;\n          return;\n        }" if (parenthesized_expression "((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0)" ( (binary_expression "(undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0" (call_expression "(undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1)" (parenthesized_expression "(undefined1  [76])" ( (subscript_expression "undefined1  [76]" identifier [ number_literal ]) )) (argument_list "((undefined1  [76])*fixP & (undefined1  [76])0x1)" ( (binary_expression "(undefined1  [76])*fixP & (undefined1  [76])0x1" (binary_expression "(undefined1  [76])*fixP" (parenthesized_expression "(undefined1  [76])" ( (subscript_expression "undefined1  [76]" identifier [ number_literal ]) )) * identifier) & (cast_expression "(undefined1  [76])0x1" ( (type_descriptor "undefined1  [76]" type_identifier (abstract_array_declarator "[76]" [ number_literal ])) ) number_literal)) ))) != (cast_expression "(undefined1  [76])0x0" ( (type_descriptor "undefined1  [76]" type_identifier (abstract_array_declarator "[76]" [ number_literal ])) ) number_literal)) )) (compound_statement "{\n          fixP->fx_r_type = BFD_RELOC_16_PCREL;\n          return;\n        }" { (expression_statement "fixP->fx_r_type = BFD_RELOC_16_PCREL;" (assignment_expression "fixP->fx_r_type = BFD_RELOC_16_PCREL" (field_expression "fixP->fx_r_type" identifier -> field_identifier) = identifier) ;) (return_statement "return;" return ;) })) (expression_statement "iVar14 = 2;" (assignment_expression "iVar14 = 2" identifier = number_literal) ;) (goto_statement "goto LAB_0004de57;" goto statement_identifier ;) })) (if_statement "if (bVar3 == BFD_RELOC_23_PCREL_S2) {\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          return;\n        }\n        if (fixP->fx_addsy != (symbolS *)0x0) {\n          return;\n        }\n        uVar15 = bfd_getl32(pcVar17);\n        uVar15 = uVar2 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }" if (parenthesized_expression "(bVar3 == BFD_RELOC_23_PCREL_S2)" ( (binary_expression "bVar3 == BFD_RELOC_23_PCREL_S2" identifier == identifier) )) (compound_statement "{\n        if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          return;\n        }\n        if (fixP->fx_addsy != (symbolS *)0x0) {\n          return;\n        }\n        uVar15 = bfd_getl32(pcVar17);\n        uVar15 = uVar2 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }" { (if_statement "if ((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0) {\n          return;\n        }" if (parenthesized_expression "((undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0)" ( (binary_expression "(undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1) !=\n            (undefined1  [76])0x0" (call_expression "(undefined1  [76])((undefined1  [76])*fixP & (undefined1  [76])0x1)" (parenthesized_expression "(undefined1  [76])" ( (subscript_expression "undefined1  [76]" identifier [ number_literal ]) )) (argument_list "((undefined1  [76])*fixP & (undefined1  [76])0x1)" ( (binary_expression "(undefined1  [76])*fixP & (undefined1  [76])0x1" (binary_expression "(undefined1  [76])*fixP" (parenthesized_expression "(undefined1  [76])" ( (subscript_expression "undefined1  [76]" identifier [ number_literal ]) )) * identifier) & (cast_expression "(undefined1  [76])0x1" ( (type_descriptor "undefined1  [76]" type_identifier (abstract_array_declarator "[76]" [ number_literal ])) ) number_literal)) ))) != (cast_expression "(undefined1  [76])0x0" ( (type_descriptor "undefined1  [76]" type_identifier (abstract_array_declarator "[76]" [ number_literal ])) ) number_literal)) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) (if_statement "if (fixP->fx_addsy != (symbolS *)0x0) {\n          return;\n        }" if (parenthesized_expression "(fixP->fx_addsy != (symbolS *)0x0)" ( (binary_expression "fixP->fx_addsy != (symbolS *)0x0" (field_expression "fixP->fx_addsy" identifier -> field_identifier) != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) (expression_statement "uVar15 = bfd_getl32(pcVar17);" (assignment_expression "uVar15 = bfd_getl32(pcVar17)" identifier = (call_expression "bfd_getl32(pcVar17)" identifier (argument_list "(pcVar17)" ( identifier )))) ;) (expression_statement "uVar15 = uVar2 >> 2 & 0x1fffff | uVar15 & 0xffe00000;" (assignment_expression "uVar15 = uVar2 >> 2 & 0x1fffff | uVar15 & 0xffe00000" identifier = (binary_expression "uVar2 >> 2 & 0x1fffff | uVar15 & 0xffe00000" (binary_expression "uVar2 >> 2 & 0x1fffff" (binary_expression "uVar2 >> 2" identifier >> number_literal) & number_literal) | (binary_expression "uVar15 & 0xffe00000" identifier & number_literal))) ;) (goto_statement "goto LAB_0004de1f;" goto statement_identifier ;) })) }))) (labeled_statement "LAB_0004dd90:\n    if (-1 < (int)bVar3) {\n      uVar16 = bfd_get_reloc_code_name(bVar3);\n      pcVar17 = (char *)dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar17,uVar16);\n    }" statement_identifier : (if_statement "if (-1 < (int)bVar3) {\n      uVar16 = bfd_get_reloc_code_name(bVar3);\n      pcVar17 = (char *)dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar17,uVar16);\n    }" if (parenthesized_expression "(-1 < (int)bVar3)" ( (binary_expression "-1 < (int)bVar3" number_literal < (cast_expression "(int)bVar3" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      uVar16 = bfd_get_reloc_code_name(bVar3);\n      pcVar17 = (char *)dcgettext(0,"unhandled relocation type %s",5);\n                    /* WARNING: Subroutine does not return */\n      as_fatal(pcVar17,uVar16);\n    }" { (expression_statement "uVar16 = bfd_get_reloc_code_name(bVar3);" (assignment_expression "uVar16 = bfd_get_reloc_code_name(bVar3)" identifier = (call_expression "bfd_get_reloc_code_name(bVar3)" identifier (argument_list "(bVar3)" ( identifier )))) ;) (expression_statement "pcVar17 = (char *)dcgettext(0,"unhandled relocation type %s",5);" (assignment_expression "pcVar17 = (char *)dcgettext(0,"unhandled relocation type %s",5)" identifier = (cast_expression "(char *)dcgettext(0,"unhandled relocation type %s",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"unhandled relocation type %s",5)" identifier (argument_list "(0,"unhandled relocation type %s",5)" ( number_literal , (string_literal ""unhandled relocation type %s"" " string_content ") , number_literal ))))) ;) comment (expression_statement "as_fatal(pcVar17,uVar16);" (call_expression "as_fatal(pcVar17,uVar16)" identifier (argument_list "(pcVar17,uVar16)" ( identifier , identifier ))) ;) }))) (if_statement "if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-bVar3) {\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix");\n    }" if (parenthesized_expression "(*(int *)PTR_alpha_num_operands_00077fcc <= (int)-bVar3)" ( (binary_expression "*(int *)PTR_alpha_num_operands_00077fcc <= (int)-bVar3" (pointer_expression "*(int *)PTR_alpha_num_operands_00077fcc" * (cast_expression "(int *)PTR_alpha_num_operands_00077fcc" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) <= (cast_expression "(int)-bVar3" ( (type_descriptor "int" primitive_type) ) (unary_expression "-bVar3" - identifier))) )) (compound_statement "{\n                    /* WARNING: Subroutine does not return */\n      as_abort("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix");\n    }" { comment (expression_statement "as_abort("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix");" (call_expression "as_abort("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix")" identifier (argument_list "("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix")" ( (string_literal ""../../gas/config/tc-alpha.c"" " string_content ") , number_literal , (string_literal ""md_apply_fix"" " string_content ") ))) ;) })) (expression_statement "operand = (alpha_operand *)(PTR_alpha_operands_00077f74 + bVar3 * -0x10);" (assignment_expression "operand = (alpha_operand *)(PTR_alpha_operands_00077f74 + bVar3 * -0x10)" identifier = (cast_expression "(alpha_operand *)(PTR_alpha_operands_00077f74 + bVar3 * -0x10)" ( (type_descriptor "alpha_operand *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR_alpha_operands_00077f74 + bVar3 * -0x10)" ( (binary_expression "PTR_alpha_operands_00077f74 + bVar3 * -0x10" identifier + (binary_expression "bVar3 * -0x10" identifier * number_literal)) )))) ;) (if_statement "if ((fixP->fx_addsy != (symbolS *)0x0) &&\n       (paVar13 = S_GET_SEGMENT(fixP->fx_addsy),\n       paVar13 != (segT)(PTR__bfd_std_section_00077fa0 + 0x180))) {\n      format = (char *)dcgettext(0,"non-absolute expression in constant field",5);\n      as_bad_where(fixP->fx_file,fixP->fx_line,format);\n    }" if (parenthesized_expression "((fixP->fx_addsy != (symbolS *)0x0) &&\n       (paVar13 = S_GET_SEGMENT(fixP->fx_addsy),\n       paVar13 != (segT)(PTR__bfd_std_section_00077fa0 + 0x180)))" ( (binary_expression "(fixP->fx_addsy != (symbolS *)0x0) &&\n       (paVar13 = S_GET_SEGMENT(fixP->fx_addsy),\n       paVar13 != (segT)(PTR__bfd_std_section_00077fa0 + 0x180))" (parenthesized_expression "(fixP->fx_addsy != (symbolS *)0x0)" ( (binary_expression "fixP->fx_addsy != (symbolS *)0x0" (field_expression "fixP->fx_addsy" identifier -> field_identifier) != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(paVar13 = S_GET_SEGMENT(fixP->fx_addsy),\n       paVar13 != (segT)(PTR__bfd_std_section_00077fa0 + 0x180))" ( (comma_expression "paVar13 = S_GET_SEGMENT(fixP->fx_addsy),\n       paVar13 != (segT)(PTR__bfd_std_section_00077fa0 + 0x180)" (assignment_expression "paVar13 = S_GET_SEGMENT(fixP->fx_addsy)" identifier = (call_expression "S_GET_SEGMENT(fixP->fx_addsy)" identifier (argument_list "(fixP->fx_addsy)" ( (field_expression "fixP->fx_addsy" identifier -> field_identifier) )))) , (binary_expression "paVar13 != (segT)(PTR__bfd_std_section_00077fa0 + 0x180)" identifier != (call_expression "(segT)(PTR__bfd_std_section_00077fa0 + 0x180)" (parenthesized_expression "(segT)" ( identifier )) (argument_list "(PTR__bfd_std_section_00077fa0 + 0x180)" ( (binary_expression "PTR__bfd_std_section_00077fa0 + 0x180" identifier + number_literal) ))))) ))) )) (compound_statement "{\n      format = (char *)dcgettext(0,"non-absolute expression in constant field",5);\n      as_bad_where(fixP->fx_file,fixP->fx_line,format);\n    }" { (expression_statement "format = (char *)dcgettext(0,"non-absolute expression in constant field",5);" (assignment_expression "format = (char *)dcgettext(0,"non-absolute expression in constant field",5)" identifier = (cast_expression "(char *)dcgettext(0,"non-absolute expression in constant field",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"non-absolute expression in constant field",5)" identifier (argument_list "(0,"non-absolute expression in constant field",5)" ( number_literal , (string_literal ""non-absolute expression in constant field"" " string_content ") , number_literal ))))) ;) (expression_statement "as_bad_where(fixP->fx_file,fixP->fx_line,format);" (call_expression "as_bad_where(fixP->fx_file,fixP->fx_line,format)" identifier (argument_list "(fixP->fx_file,fixP->fx_line,format)" ( (field_expression "fixP->fx_file" identifier -> field_identifier) , (field_expression "fixP->fx_line" identifier -> field_identifier) , identifier ))) ;) })) (expression_statement "uVar15 = bfd_getl32(pcVar17);" (assignment_expression "uVar15 = bfd_getl32(pcVar17)" identifier = (call_expression "bfd_getl32(pcVar17)" identifier (argument_list "(pcVar17)" ( identifier )))) ;) (expression_statement "uVar15 = insert_operand(uVar15,operand,val,fixP->fx_file,fixP->fx_line);" (assignment_expression "uVar15 = insert_operand(uVar15,operand,val,fixP->fx_file,fixP->fx_line)" identifier = (call_expression "insert_operand(uVar15,operand,val,fixP->fx_file,fixP->fx_line)" identifier (argument_list "(uVar15,operand,val,fixP->fx_file,fixP->fx_line)" ( identifier , identifier , identifier , (field_expression "fixP->fx_file" identifier -> field_identifier) , (field_expression "fixP->fx_line" identifier -> field_identifier) )))) ;) }))) (labeled_statement "LAB_0004de1f:\n  number_to_chars_littleendian(pcVar17,(ulonglong)uVar15,4);" statement_identifier : (expression_statement "number_to_chars_littleendian(pcVar17,(ulonglong)uVar15,4);" (call_expression "number_to_chars_littleendian(pcVar17,(ulonglong)uVar15,4)" identifier (argument_list "(pcVar17,(ulonglong)uVar15,4)" ( identifier , (cast_expression "(ulonglong)uVar15" ( (type_descriptor "ulonglong" type_identifier) ) identifier) , number_literal ))) ;)) (labeled_statement "LAB_0004de31:\n  *(byte *)fixP = *(byte *)fixP | 0x20;" statement_identifier : (expression_statement "*(byte *)fixP = *(byte *)fixP | 0x20;" (assignment_expression "*(byte *)fixP = *(byte *)fixP | 0x20" (pointer_expression "*(byte *)fixP" * (cast_expression "(byte *)fixP" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) = (binary_expression "*(byte *)fixP | 0x20" (pointer_expression "*(byte *)fixP" * (cast_expression "(byte *)fixP" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) | number_literal)) ;)) (return_statement "return;" return ;) })))
(translation_unit "void FUN_0004dbf0(byte *param_1,uint *param_2,undefined4 param_3)\n\n{\n  int iVar1;\n  uint *puVar2;\n  uint uVar3;\n  uint uVar4;\n  int iVar5;\n  uint *puVar6;\n  uint uVar7;\n  uint uVar9;\n  uint uVar10;\n  uint uVar11;\n  uint uVar12;\n  undefined *puVar13;\n  undefined4 uVar14;\n  uint uVar15;\n  undefined4 uVar16;\n  uint uVar17;\n  uint uVar8;\n  \n  puVar2 = *(uint **)(param_1 + 4);\n  uVar15 = *(uint *)(param_1 + 8);\n  iVar1 = (int)puVar2 + uVar15 + 0x4c;\n  uVar17 = param_2[1];\n  uVar3 = *param_2;\n  uVar4 = *(uint *)(param_1 + 0x30);\n  if (uVar4 == 0xa9) {\n    if ((*param_1 & 1) != 0) {\n      return;\n    }\n    if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }\n    uVar15 = bfd_getl32(iVar1);\n    uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }\n  else {\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    \n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }\nLAB_0004de1f:\n  FUN_000469c0(iVar1,uVar15,0,4);\nLAB_0004de31:\n  *param_1 = *param_1 | 0x20;\n  return;\n}\n\n" (function_definition "void FUN_0004dbf0(byte *param_1,uint *param_2,undefined4 param_3)\n\n{\n  int iVar1;\n  uint *puVar2;\n  uint uVar3;\n  uint uVar4;\n  int iVar5;\n  uint *puVar6;\n  uint uVar7;\n  uint uVar9;\n  uint uVar10;\n  uint uVar11;\n  uint uVar12;\n  undefined *puVar13;\n  undefined4 uVar14;\n  uint uVar15;\n  undefined4 uVar16;\n  uint uVar17;\n  uint uVar8;\n  \n  puVar2 = *(uint **)(param_1 + 4);\n  uVar15 = *(uint *)(param_1 + 8);\n  iVar1 = (int)puVar2 + uVar15 + 0x4c;\n  uVar17 = param_2[1];\n  uVar3 = *param_2;\n  uVar4 = *(uint *)(param_1 + 0x30);\n  if (uVar4 == 0xa9) {\n    if ((*param_1 & 1) != 0) {\n      return;\n    }\n    if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }\n    uVar15 = bfd_getl32(iVar1);\n    uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }\n  else {\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    \n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }\nLAB_0004de1f:\n  FUN_000469c0(iVar1,uVar15,0,4);\nLAB_0004de31:\n  *param_1 = *param_1 | 0x20;\n  return;\n}" primitive_type (function_declarator "FUN_0004dbf0(byte *param_1,uint *param_2,undefined4 param_3)" identifier (parameter_list "(byte *param_1,uint *param_2,undefined4 param_3)" ( (parameter_declaration "byte *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "uint *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) , (parameter_declaration "undefined4 param_3" type_identifier identifier) ))) (compound_statement "{\n  int iVar1;\n  uint *puVar2;\n  uint uVar3;\n  uint uVar4;\n  int iVar5;\n  uint *puVar6;\n  uint uVar7;\n  uint uVar9;\n  uint uVar10;\n  uint uVar11;\n  uint uVar12;\n  undefined *puVar13;\n  undefined4 uVar14;\n  uint uVar15;\n  undefined4 uVar16;\n  uint uVar17;\n  uint uVar8;\n  \n  puVar2 = *(uint **)(param_1 + 4);\n  uVar15 = *(uint *)(param_1 + 8);\n  iVar1 = (int)puVar2 + uVar15 + 0x4c;\n  uVar17 = param_2[1];\n  uVar3 = *param_2;\n  uVar4 = *(uint *)(param_1 + 0x30);\n  if (uVar4 == 0xa9) {\n    if ((*param_1 & 1) != 0) {\n      return;\n    }\n    if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }\n    uVar15 = bfd_getl32(iVar1);\n    uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }\n  else {\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    \n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }\nLAB_0004de1f:\n  FUN_000469c0(iVar1,uVar15,0,4);\nLAB_0004de31:\n  *param_1 = *param_1 | 0x20;\n  return;\n}" { (declaration "int iVar1;" primitive_type identifier ;) (declaration "uint *puVar2;" type_identifier (pointer_declarator "*puVar2" * identifier) ;) (declaration "uint uVar3;" type_identifier identifier ;) (declaration "uint uVar4;" type_identifier identifier ;) (declaration "int iVar5;" primitive_type identifier ;) (declaration "uint *puVar6;" type_identifier (pointer_declarator "*puVar6" * identifier) ;) (declaration "uint uVar7;" type_identifier identifier ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "uint uVar11;" type_identifier identifier ;) (declaration "uint uVar12;" type_identifier identifier ;) (declaration "undefined *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "undefined4 uVar14;" type_identifier identifier ;) (declaration "uint uVar15;" type_identifier identifier ;) (declaration "undefined4 uVar16;" type_identifier identifier ;) (declaration "uint uVar17;" type_identifier identifier ;) (declaration "uint uVar8;" type_identifier identifier ;) (expression_statement "puVar2 = *(uint **)(param_1 + 4);" (assignment_expression "puVar2 = *(uint **)(param_1 + 4)" identifier = (pointer_expression "*(uint **)(param_1 + 4)" * (cast_expression "(uint **)(param_1 + 4)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_1 + 4)" ( (binary_expression "param_1 + 4" identifier + number_literal) ))))) ;) (expression_statement "uVar15 = *(uint *)(param_1 + 8);" (assignment_expression "uVar15 = *(uint *)(param_1 + 8)" identifier = (pointer_expression "*(uint *)(param_1 + 8)" * (cast_expression "(uint *)(param_1 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 8)" ( (binary_expression "param_1 + 8" identifier + number_literal) ))))) ;) (expression_statement "iVar1 = (int)puVar2 + uVar15 + 0x4c;" (assignment_expression "iVar1 = (int)puVar2 + uVar15 + 0x4c" identifier = (binary_expression "(int)puVar2 + uVar15 + 0x4c" (binary_expression "(int)puVar2 + uVar15" (cast_expression "(int)puVar2" ( (type_descriptor "int" primitive_type) ) identifier) + identifier) + number_literal)) ;) (expression_statement "uVar17 = param_2[1];" (assignment_expression "uVar17 = param_2[1]" identifier = (subscript_expression "param_2[1]" identifier [ number_literal ])) ;) (expression_statement "uVar3 = *param_2;" (assignment_expression "uVar3 = *param_2" identifier = (pointer_expression "*param_2" * identifier)) ;) (expression_statement "uVar4 = *(uint *)(param_1 + 0x30);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x30)" identifier = (pointer_expression "*(uint *)(param_1 + 0x30)" * (cast_expression "(uint *)(param_1 + 0x30)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) ))))) ;) (if_statement "if (uVar4 == 0xa9) {\n    if ((*param_1 & 1) != 0) {\n      return;\n    }\n    if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }\n    uVar15 = bfd_getl32(iVar1);\n    uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }\n  else {\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    \n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }" if (parenthesized_expression "(uVar4 == 0xa9)" ( (binary_expression "uVar4 == 0xa9" identifier == number_literal) )) (compound_statement "{\n    if ((*param_1 & 1) != 0) {\n      return;\n    }\n    if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }\n    uVar15 = bfd_getl32(iVar1);\n    uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }" { (if_statement "if ((*param_1 & 1) != 0) {\n      return;\n    }" if (parenthesized_expression "((*param_1 & 1) != 0)" ( (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" ( (binary_expression "*param_1 & 1" (pointer_expression "*param_1" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (if_statement "if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }" if (parenthesized_expression "(*(int *)(param_1 + 0xc) != 0)" ( (binary_expression "*(int *)(param_1 + 0xc) != 0" (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (expression_statement "uVar15 = bfd_getl32(iVar1);" (assignment_expression "uVar15 = bfd_getl32(iVar1)" identifier = (call_expression "bfd_getl32(iVar1)" identifier (argument_list "(iVar1)" ( identifier )))) ;) (expression_statement "uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;" (assignment_expression "uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000" identifier = (binary_expression "uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000" (binary_expression "uVar3 >> 2 & 0x3fff" (binary_expression "uVar3 >> 2" identifier >> number_literal) & number_literal) | (binary_expression "uVar15 & 0xffffc000" identifier & number_literal))) ;) }) (else_clause "else {\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    \n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }" else (compound_statement "{\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    \n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }" { (if_statement "if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }" if (parenthesized_expression "(0xa9 < uVar4)" ( (binary_expression "0xa9 < uVar4" number_literal < identifier) )) (compound_statement "{\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }" { (if_statement "if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }" if (parenthesized_expression "(uVar4 < 0xbc)" ( (binary_expression "uVar4 < 0xbc" identifier < number_literal) )) (compound_statement "{\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }" { (if_statement "if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }" if (parenthesized_expression "(0xb7 < uVar4)" ( (binary_expression "0xb7 < uVar4" number_literal < identifier) )) (compound_statement "{\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }" { (labeled_statement "LAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }" statement_identifier : (if_statement "if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }" if (parenthesized_expression "(*(int *)(param_1 + 0xc) == 0)" ( (binary_expression "*(int *)(param_1 + 0xc) == 0" (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n            return;\n          }" { (return_statement "return;" return ;) }))) (expression_statement "FUN_000409b0(*(int *)(param_1 + 0xc));" (call_expression "FUN_000409b0(*(int *)(param_1 + 0xc))" identifier (argument_list "(*(int *)(param_1 + 0xc))" ( (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) ))) ;) (return_statement "return;" return ;) })) (if_statement "if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;" if (parenthesized_expression "(uVar4 < 0xb5)" ( (binary_expression "uVar4 < 0xb5" identifier < number_literal) )) (compound_statement "{\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }" { (if_statement "if (0xb2 < uVar4) goto LAB_0004dea3;" if (parenthesized_expression "(0xb2 < uVar4)" ( (binary_expression "0xb2 < uVar4" number_literal < identifier) )) (goto_statement "goto LAB_0004dea3;" goto statement_identifier ;)) (if_statement "if (uVar4 < 0xaf) {\n            return;\n          }" if (parenthesized_expression "(uVar4 < 0xaf)" ( (binary_expression "uVar4 < 0xaf" identifier < number_literal) )) (compound_statement "{\n            return;\n          }" { (return_statement "return;" return ;) })) }) (else_clause "else if (uVar4 == 0xb6) goto LAB_0004dea3;" else (if_statement "if (uVar4 == 0xb6) goto LAB_0004dea3;" if (parenthesized_expression "(uVar4 == 0xb6)" ( (binary_expression "uVar4 == 0xb6" identifier == number_literal) )) (goto_statement "goto LAB_0004dea3;" goto statement_identifier ;)))) }) (else_clause "else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }" else (if_statement "if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }" if (parenthesized_expression "(0xbc < uVar4)" ( (binary_expression "0xbc < uVar4" number_literal < identifier) )) (compound_statement "{\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }" { (if_statement "if (uVar4 < 0xc0) goto LAB_0004dea3;" if (parenthesized_expression "(uVar4 < 0xc0)" ( (binary_expression "uVar4 < 0xc0" identifier < number_literal) )) (goto_statement "goto LAB_0004dea3;" goto statement_identifier ;)) (if_statement "if (uVar4 - 0x5a3 < 2) {\n          return;\n        }" if (parenthesized_expression "(uVar4 - 0x5a3 < 2)" ( (binary_expression "uVar4 - 0x5a3 < 2" (binary_expression "uVar4 - 0x5a3" identifier - number_literal) < number_literal) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) })))) (goto_statement "goto LAB_0004dd90;" goto statement_identifier ;) })) (if_statement "if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }" if (parenthesized_expression "(0x46 < uVar4)" ( (binary_expression "0x46 < uVar4" number_literal < identifier) )) (compound_statement "{\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }" { (if_statement "if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }" if (parenthesized_expression "(uVar4 == 0xa4)" ( (binary_expression "uVar4 == 0xa4" identifier == number_literal) )) (compound_statement "{\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }" { (expression_statement "uVar15 = (uint)(short)uVar3;" (assignment_expression "uVar15 = (uint)(short)uVar3" identifier = (cast_expression "(uint)(short)uVar3" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(short)uVar3" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) identifier))) ;) (expression_statement "param_1[0x14] = 0;" (assignment_expression "param_1[0x14] = 0" (subscript_expression "param_1[0x14]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x15] = 0;" (assignment_expression "param_1[0x15] = 0" (subscript_expression "param_1[0x15]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x16] = 0;" (assignment_expression "param_1[0x16] = 0" (subscript_expression "param_1[0x16]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x17] = 0;" (assignment_expression "param_1[0x17] = 0" (subscript_expression "param_1[0x17]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x18] = 0;" (assignment_expression "param_1[0x18] = 0" (subscript_expression "param_1[0x18]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x19] = 0;" (assignment_expression "param_1[0x19] = 0" (subscript_expression "param_1[0x19]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x1a] = 0;" (assignment_expression "param_1[0x1a] = 0" (subscript_expression "param_1[0x1a]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x1b] = 0;" (assignment_expression "param_1[0x1b] = 0" (subscript_expression "param_1[0x1b]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "*param_1 = *param_1 | 0x20;" (assignment_expression "*param_1 = *param_1 | 0x20" (pointer_expression "*param_1" * identifier) = (binary_expression "*param_1 | 0x20" (pointer_expression "*param_1" * identifier) | number_literal)) ;) (expression_statement "uVar17 = (int)uVar15 >> 0x1f;" (assignment_expression "uVar17 = (int)uVar15 >> 0x1f" identifier = (binary_expression "(int)uVar15 >> 0x1f" (cast_expression "(int)uVar15" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal)) ;) (labeled_statement "LAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);" statement_identifier : (expression_statement "uVar14 = FUN_0003c2e0(param_3);" (assignment_expression "uVar14 = FUN_0003c2e0(param_3)" identifier = (call_expression "FUN_0003c2e0(param_3)" identifier (argument_list "(param_3)" ( identifier )))) ;)) (expression_statement "*(undefined4 *)(param_1 + 0xc) = uVar14;" (assignment_expression "*(undefined4 *)(param_1 + 0xc) = uVar14" (pointer_expression "*(undefined4 *)(param_1 + 0xc)" * (cast_expression "(undefined4 *)(param_1 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) = identifier) ;) (expression_statement "FUN_000469c0(iVar1,uVar15,uVar17,2);" (call_expression "FUN_000469c0(iVar1,uVar15,uVar17,2)" identifier (argument_list "(iVar1,uVar15,uVar17,2)" ( identifier , identifier , identifier , number_literal ))) ;) (if_statement "if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }" if (parenthesized_expression "((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0))" ( (binary_expression "(*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)" (parenthesized_expression "(*(int *)(param_1 + 0xc) != 0)" ( (binary_expression "*(int *)(param_1 + 0xc) != 0" (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) != number_literal) )) || (parenthesized_expression "((*param_1 & 1) != 0)" ( (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" ( (binary_expression "*param_1 & 1" (pointer_expression "*param_1" * identifier) & number_literal) )) != number_literal) ))) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) (expression_statement "uVar14 = *(undefined4 *)(param_1 + 0x30);" (assignment_expression "uVar14 = *(undefined4 *)(param_1 + 0x30)" identifier = (pointer_expression "*(undefined4 *)(param_1 + 0x30)" * (cast_expression "(undefined4 *)(param_1 + 0x30)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x30)" ( (binary_expression "param_1 + 0x30" identifier + number_literal) ))))) ;) (expression_statement "uVar16 = dcgettext(0,"type %d reloc done?\n",5);" (assignment_expression "uVar16 = dcgettext(0,"type %d reloc done?\n",5)" identifier = (call_expression "dcgettext(0,"type %d reloc done?\n",5)" identifier (argument_list "(0,"type %d reloc done?\n",5)" ( number_literal , (string_literal ""type %d reloc done?\n"" " string_content escape_sequence ") , number_literal )))) ;) (expression_statement "FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);" (call_expression "FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14)" identifier (argument_list "(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14)" ( (pointer_expression "*(undefined4 *)(param_1 + 0x3c)" * (cast_expression "(undefined4 *)(param_1 + 0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3c)" ( (binary_expression "param_1 + 0x3c" identifier + number_literal) )))) , (pointer_expression "*(undefined4 *)(param_1 + 0x40)" * (cast_expression "(undefined4 *)(param_1 + 0x40)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) )))) , identifier , identifier ))) ;) (goto_statement "goto LAB_0004de31;" goto statement_identifier ;) })) (if_statement "if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }" if (parenthesized_expression "(uVar4 < 0xa5)" ( (binary_expression "uVar4 < 0xa5" identifier < number_literal) )) (compound_statement "{\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }" { (if_statement "if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }" if (parenthesized_expression "(uVar4 == 0xa3)" ( (binary_expression "uVar4 == 0xa3" identifier == number_literal) )) (compound_statement "{\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }" { (expression_statement "iVar5 = *(int *)(param_1 + 0x28);" (assignment_expression "iVar5 = *(int *)(param_1 + 0x28)" identifier = (pointer_expression "*(int *)(param_1 + 0x28)" * (cast_expression "(int *)(param_1 + 0x28)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x28)" ( (binary_expression "param_1 + 0x28" identifier + number_literal) ))))) ;) (if_statement "if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }" if (parenthesized_expression "(iVar5 != 0)" ( (binary_expression "iVar5 != 0" identifier != number_literal) )) (compound_statement "{\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }" { (expression_statement "puVar6 = *(uint **)(iVar5 + 4);" (assignment_expression "puVar6 = *(uint **)(iVar5 + 4)" identifier = (pointer_expression "*(uint **)(iVar5 + 4)" * (cast_expression "(uint **)(iVar5 + 4)" ( (type_descriptor "uint **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar5 + 4)" ( (binary_expression "iVar5 + 4" identifier + number_literal) ))))) ;) (expression_statement "uVar4 = *(uint *)(iVar5 + 8);" (assignment_expression "uVar4 = *(uint *)(iVar5 + 8)" identifier = (pointer_expression "*(uint *)(iVar5 + 8)" * (cast_expression "(uint *)(iVar5 + 8)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar5 + 8)" ( (binary_expression "iVar5 + 8" identifier + number_literal) ))))) ;) (expression_statement "uVar7 = *puVar6;" (assignment_expression "uVar7 = *puVar6" identifier = (pointer_expression "*puVar6" * identifier)) ;) (expression_statement "uVar8 = *puVar6;" (assignment_expression "uVar8 = *puVar6" identifier = (pointer_expression "*puVar6" * identifier)) ;) (expression_statement "uVar9 = puVar6[1];" (assignment_expression "uVar9 = puVar6[1]" identifier = (subscript_expression "puVar6[1]" identifier [ number_literal ])) ;) (expression_statement "uVar10 = *puVar2;" (assignment_expression "uVar10 = *puVar2" identifier = (pointer_expression "*puVar2" * identifier)) ;) (expression_statement "uVar12 = (uVar4 + uVar8) - *puVar2;" (assignment_expression "uVar12 = (uVar4 + uVar8) - *puVar2" identifier = (binary_expression "(uVar4 + uVar8) - *puVar2" (parenthesized_expression "(uVar4 + uVar8)" ( (binary_expression "uVar4 + uVar8" identifier + identifier) )) - (pointer_expression "*puVar2" * identifier))) ;) (expression_statement "uVar11 = puVar2[1];" (assignment_expression "uVar11 = puVar2[1]" identifier = (subscript_expression "puVar2[1]" identifier [ number_literal ])) ;) (expression_statement "*(uint *)(param_1 + 0x14) = uVar12 - uVar15;" (assignment_expression "*(uint *)(param_1 + 0x14) = uVar12 - uVar15" (pointer_expression "*(uint *)(param_1 + 0x14)" * (cast_expression "(uint *)(param_1 + 0x14)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x14)" ( (binary_expression "param_1 + 0x14" identifier + number_literal) )))) = (binary_expression "uVar12 - uVar15" identifier - identifier)) ;) (expression_statement "*(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;" (assignment_expression "*(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)" (pointer_expression "*(uint *)(param_1 + 0x18)" * (cast_expression "(uint *)(param_1 + 0x18)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x18)" ( (binary_expression "param_1 + 0x18" identifier + number_literal) )))) = (binary_expression "((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)" (parenthesized_expression "((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f))" ( (binary_expression "(((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)" (parenthesized_expression "(((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10))" ( (binary_expression "((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)" (parenthesized_expression "((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11)" ( (binary_expression "(((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11" (parenthesized_expression "(((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7))" ( (binary_expression "((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)" (binary_expression "((int)uVar4 >> 0x1f) + uVar9" (parenthesized_expression "((int)uVar4 >> 0x1f)" ( (binary_expression "(int)uVar4 >> 0x1f" (cast_expression "(int)uVar4" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) )) + identifier) + (cast_expression "(uint)CARRY4(uVar4,uVar7)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY4(uVar4,uVar7)" identifier (argument_list "(uVar4,uVar7)" ( identifier , identifier ))))) )) - identifier) )) - (call_expression "(uint)(uVar4 + uVar8 < uVar10)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar4 + uVar8 < uVar10)" ( (binary_expression "uVar4 + uVar8 < uVar10" (binary_expression "uVar4 + uVar8" identifier + identifier) < identifier) )))) )) - (parenthesized_expression "((int)uVar15 >> 0x1f)" ( (binary_expression "(int)uVar15 >> 0x1f" (cast_expression "(int)uVar15" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) ))) )) - (call_expression "(uint)(uVar12 < uVar15)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar12 < uVar15)" ( (binary_expression "uVar12 < uVar15" identifier < identifier) ))))) ;) })) (expression_statement "param_1[0x30] = 0xa5;" (assignment_expression "param_1[0x30] = 0xa5" (subscript_expression "param_1[0x30]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x31] = 0;" (assignment_expression "param_1[0x31] = 0" (subscript_expression "param_1[0x31]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x32] = 0;" (assignment_expression "param_1[0x32] = 0" (subscript_expression "param_1[0x32]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x33] = 0;" (assignment_expression "param_1[0x33] = 0" (subscript_expression "param_1[0x33]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "uVar15 = (uint)(short)uVar3;" (assignment_expression "uVar15 = (uint)(short)uVar3" identifier = (cast_expression "(uint)(short)uVar3" ( (type_descriptor "uint" type_identifier) ) (cast_expression "(short)uVar3" ( (type_descriptor "short" (sized_type_specifier "short" short)) ) identifier))) ;) (expression_statement "uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);" (assignment_expression "uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15)" identifier = (binary_expression "(uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15)" (parenthesized_expression "(uVar17 - ((int)uVar15 >> 0x1f))" ( (binary_expression "uVar17 - ((int)uVar15 >> 0x1f)" identifier - (parenthesized_expression "((int)uVar15 >> 0x1f)" ( (binary_expression "(int)uVar15 >> 0x1f" (cast_expression "(int)uVar15" ( (type_descriptor "int" primitive_type) ) identifier) >> number_literal) ))) )) - (call_expression "(uint)(uVar3 < uVar15)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(uVar3 < uVar15)" ( (binary_expression "uVar3 < uVar15" identifier < identifier) ))))) ;) (expression_statement "uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;" (assignment_expression "uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000" identifier = (binary_expression "uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000" (binary_expression "uVar3 - uVar15 >> 0x10" (binary_expression "uVar3 - uVar15" identifier - identifier) >> number_literal) | (binary_expression "uVar17 * 0x10000" identifier * number_literal))) ;) (expression_statement "uVar17 = uVar17 >> 0x10;" (assignment_expression "uVar17 = uVar17 >> 0x10" identifier = (binary_expression "uVar17 >> 0x10" identifier >> number_literal)) ;) (goto_statement "goto LAB_0004dcec;" goto statement_identifier ;) })) }) (else_clause "else if (0xa6 < uVar4) {\n        return;\n      }" else (if_statement "if (0xa6 < uVar4) {\n        return;\n      }" if (parenthesized_expression "(0xa6 < uVar4)" ( (binary_expression "0xa6 < uVar4" number_literal < identifier) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) })))) (goto_statement "goto LAB_0004dd90;" goto statement_identifier ;) })) (if_statement "if (0x44 < uVar4) {\n      return;\n    }" if (parenthesized_expression "(0x44 < uVar4)" ( (binary_expression "0x44 < uVar4" number_literal < identifier) )) (compound_statement "{\n      return;\n    }" { (return_statement "return;" return ;) })) (if_statement "if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }" if (parenthesized_expression "(uVar4 == 2)" ( (binary_expression "uVar4 == 2" identifier == number_literal) )) (compound_statement "{\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }" { (if_statement "if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }" if (parenthesized_expression "((*param_1 & 1) != 0)" ( (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" ( (binary_expression "*param_1 & 1" (pointer_expression "*param_1" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }" { (expression_statement "param_1[0x30] = 9;" (assignment_expression "param_1[0x30] = 9" (subscript_expression "param_1[0x30]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x31] = 0;" (assignment_expression "param_1[0x31] = 0" (subscript_expression "param_1[0x31]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x32] = 0;" (assignment_expression "param_1[0x32] = 0" (subscript_expression "param_1[0x32]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x33] = 0;" (assignment_expression "param_1[0x33] = 0" (subscript_expression "param_1[0x33]" identifier [ number_literal ]) = number_literal) ;) (return_statement "return;" return ;) })) (expression_statement "uVar14 = 4;" (assignment_expression "uVar14 = 4" identifier = number_literal) ;) (labeled_statement "LAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }" statement_identifier : (if_statement "if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }" if (parenthesized_expression "(*(int *)(param_1 + 0xc) != 0)" ( (binary_expression "*(int *)(param_1 + 0xc) != 0" (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n        return;\n      }" { (return_statement "return;" return ;) }))) (expression_statement "FUN_000469c0(iVar1,uVar3,uVar17,uVar14);" (call_expression "FUN_000469c0(iVar1,uVar3,uVar17,uVar14)" identifier (argument_list "(iVar1,uVar3,uVar17,uVar14)" ( identifier , identifier , identifier , identifier ))) ;) (goto_statement "goto LAB_0004de31;" goto statement_identifier ;) })) (if_statement "if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }" if (parenthesized_expression "(uVar4 < 3)" ( (binary_expression "uVar4 < 3" identifier < number_literal) )) (compound_statement "{\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }" { (if_statement "if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }" if (parenthesized_expression "(uVar4 == 1)" ( (binary_expression "uVar4 == 1" identifier == number_literal) )) (compound_statement "{\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }" { (if_statement "if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }" if (parenthesized_expression "((*param_1 & 1) != 0)" ( (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" ( (binary_expression "*param_1 & 1" (pointer_expression "*param_1" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }" { (expression_statement "param_1[0x30] = 8;" (assignment_expression "param_1[0x30] = 8" (subscript_expression "param_1[0x30]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x31] = 0;" (assignment_expression "param_1[0x31] = 0" (subscript_expression "param_1[0x31]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x32] = 0;" (assignment_expression "param_1[0x32] = 0" (subscript_expression "param_1[0x32]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x33] = 0;" (assignment_expression "param_1[0x33] = 0" (subscript_expression "param_1[0x33]" identifier [ number_literal ]) = number_literal) ;) (return_statement "return;" return ;) })) (expression_statement "uVar14 = 8;" (assignment_expression "uVar14 = 8" identifier = number_literal) ;) (goto_statement "goto LAB_0004de57;" goto statement_identifier ;) })) }) (else_clause "else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }" else (compound_statement "{\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }" { (if_statement "if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }" if (parenthesized_expression "(uVar4 == 5)" ( (binary_expression "uVar4 == 5" identifier == number_literal) )) (compound_statement "{\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }" { (if_statement "if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }" if (parenthesized_expression "((*param_1 & 1) != 0)" ( (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" ( (binary_expression "*param_1 & 1" (pointer_expression "*param_1" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }" { (expression_statement "param_1[0x30] = 0xb;" (assignment_expression "param_1[0x30] = 0xb" (subscript_expression "param_1[0x30]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x31] = 0;" (assignment_expression "param_1[0x31] = 0" (subscript_expression "param_1[0x31]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x32] = 0;" (assignment_expression "param_1[0x32] = 0" (subscript_expression "param_1[0x32]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "param_1[0x33] = 0;" (assignment_expression "param_1[0x33] = 0" (subscript_expression "param_1[0x33]" identifier [ number_literal ]) = number_literal) ;) (return_statement "return;" return ;) })) (expression_statement "uVar14 = 2;" (assignment_expression "uVar14 = 2" identifier = number_literal) ;) (goto_statement "goto LAB_0004de57;" goto statement_identifier ;) })) (if_statement "if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }" if (parenthesized_expression "(uVar4 == 0x42)" ( (binary_expression "uVar4 == 0x42" identifier == number_literal) )) (compound_statement "{\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }" { (if_statement "if ((*param_1 & 1) != 0) {\n          return;\n        }" if (parenthesized_expression "((*param_1 & 1) != 0)" ( (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" ( (binary_expression "*param_1 & 1" (pointer_expression "*param_1" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) (if_statement "if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }" if (parenthesized_expression "(*(int *)(param_1 + 0xc) != 0)" ( (binary_expression "*(int *)(param_1 + 0xc) != 0" (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) != number_literal) )) (compound_statement "{\n          return;\n        }" { (return_statement "return;" return ;) })) (expression_statement "uVar15 = bfd_getl32(iVar1);" (assignment_expression "uVar15 = bfd_getl32(iVar1)" identifier = (call_expression "bfd_getl32(iVar1)" identifier (argument_list "(iVar1)" ( identifier )))) ;) (expression_statement "uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;" (assignment_expression "uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000" identifier = (binary_expression "uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000" (binary_expression "uVar3 >> 2 & 0x1fffff" (binary_expression "uVar3 >> 2" identifier >> number_literal) & number_literal) | (binary_expression "uVar15 & 0xffe00000" identifier & number_literal))) ;) (goto_statement "goto LAB_0004de1f;" goto statement_identifier ;) })) }))) (labeled_statement "LAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }" statement_identifier : (if_statement "if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }" if (parenthesized_expression "(-1 < (int)uVar4)" ( (binary_expression "-1 < (int)uVar4" number_literal < (cast_expression "(int)uVar4" ( (type_descriptor "int" primitive_type) ) identifier)) )) (compound_statement "{\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }" { (expression_statement "uVar14 = bfd_get_reloc_code_name(uVar4);" (assignment_expression "uVar14 = bfd_get_reloc_code_name(uVar4)" identifier = (call_expression "bfd_get_reloc_code_name(uVar4)" identifier (argument_list "(uVar4)" ( identifier )))) ;) (expression_statement "uVar16 = dcgettext(0,"unhandled relocation type %s",5);" (assignment_expression "uVar16 = dcgettext(0,"unhandled relocation type %s",5)" identifier = (call_expression "dcgettext(0,"unhandled relocation type %s",5)" identifier (argument_list "(0,"unhandled relocation type %s",5)" ( number_literal , (string_literal ""unhandled relocation type %s"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_000316c0(uVar16,uVar14);" (call_expression "FUN_000316c0(uVar16,uVar14)" identifier (argument_list "(uVar16,uVar14)" ( identifier , identifier ))) ;) }))) (if_statement "if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    \n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }" if (parenthesized_expression "(*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4)" ( (binary_expression "*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4" (pointer_expression "*(int *)PTR_alpha_num_operands_00077fcc" * (cast_expression "(int *)PTR_alpha_num_operands_00077fcc" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier)) <= (cast_expression "(int)-uVar4" ( (type_descriptor "int" primitive_type) ) (unary_expression "-uVar4" - identifier))) )) (compound_statement "{\n                    \n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }" { (expression_statement "FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);" (call_expression "FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15)" identifier (argument_list "("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15)" ( (string_literal ""../../gas/config/tc-alpha.c"" " string_content ") , number_literal , (string_literal ""md_apply_fix"" " string_content ") , identifier ))) ;) })) (if_statement "if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }" if (parenthesized_expression "((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180))" ( (binary_expression "(*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)" (parenthesized_expression "(*(int *)(param_1 + 0xc) != 0)" ( (binary_expression "*(int *)(param_1 + 0xc) != 0" (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) != number_literal) )) && (parenthesized_expression "(puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)" ( (comma_expression "puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180" (assignment_expression "puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc))" identifier = (cast_expression "(undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc))" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_0003e1d0(*(int *)(param_1 + 0xc))" identifier (argument_list "(*(int *)(param_1 + 0xc))" ( (pointer_expression "*(int *)(param_1 + 0xc)" * (cast_expression "(int *)(param_1 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0xc)" ( (binary_expression "param_1 + 0xc" identifier + number_literal) )))) ))))) , (binary_expression "puVar13 != PTR__bfd_std_section_00077fa0 + 0x180" identifier != (binary_expression "PTR__bfd_std_section_00077fa0 + 0x180" identifier + number_literal))) ))) )) (compound_statement "{\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }" { (expression_statement "uVar14 = dcgettext(0,"non-absolute expression in constant field",5);" (assignment_expression "uVar14 = dcgettext(0,"non-absolute expression in constant field",5)" identifier = (call_expression "dcgettext(0,"non-absolute expression in constant field",5)" identifier (argument_list "(0,"non-absolute expression in constant field",5)" ( number_literal , (string_literal ""non-absolute expression in constant field"" " string_content ") , number_literal )))) ;) (expression_statement "FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);" (call_expression "FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14)" identifier (argument_list "(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14)" ( (pointer_expression "*(undefined4 *)(param_1 + 0x3c)" * (cast_expression "(undefined4 *)(param_1 + 0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3c)" ( (binary_expression "param_1 + 0x3c" identifier + number_literal) )))) , (pointer_expression "*(undefined4 *)(param_1 + 0x40)" * (cast_expression "(undefined4 *)(param_1 + 0x40)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) )))) , identifier ))) ;) })) (expression_statement "bfd_getl32(iVar1);" (call_expression "bfd_getl32(iVar1)" identifier (argument_list "(iVar1)" ( identifier ))) ;) (expression_statement "uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));" (assignment_expression "uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40))" identifier = (call_expression "FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40))" identifier (argument_list "(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40))" ( identifier , identifier , (pointer_expression "*(undefined4 *)(param_1 + 0x3c)" * (cast_expression "(undefined4 *)(param_1 + 0x3c)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x3c)" ( (binary_expression "param_1 + 0x3c" identifier + number_literal) )))) , (pointer_expression "*(undefined4 *)(param_1 + 0x40)" * (cast_expression "(undefined4 *)(param_1 + 0x40)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_1 + 0x40)" ( (binary_expression "param_1 + 0x40" identifier + number_literal) )))) )))) ;) }))) (labeled_statement "LAB_0004de1f:\n  FUN_000469c0(iVar1,uVar15,0,4);" statement_identifier : (expression_statement "FUN_000469c0(iVar1,uVar15,0,4);" (call_expression "FUN_000469c0(iVar1,uVar15,0,4)" identifier (argument_list "(iVar1,uVar15,0,4)" ( identifier , identifier , number_literal , number_literal ))) ;)) (labeled_statement "LAB_0004de31:\n  *param_1 = *param_1 | 0x20;" statement_identifier : (expression_statement "*param_1 = *param_1 | 0x20;" (assignment_expression "*param_1 = *param_1 | 0x20" (pointer_expression "*param_1" * identifier) = (binary_expression "*param_1 | 0x20" (pointer_expression "*param_1" * identifier) | number_literal)) ;)) (return_statement "return;" return ;) })))
(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 IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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 IDENT = (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + IDENT) + LIT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) != LIT) )) (compound_statement { (return_statement return ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (return_statement return ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT >> LIT) & LIT) | (binary_expression IDENT & LIT))) ;) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (return_statement return ;) }))) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (return_statement return ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (return_statement return ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)))) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression IDENT - LIT) < LIT) )) (compound_statement { (return_statement return ;) })) })))) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor (sized_type_specifier short)) ) IDENT))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) | LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT)) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;)) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , LIT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) || (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) != LIT) ))) )) (compound_statement { (return_statement return ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT , IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (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 IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT + IDENT) )) - (pointer_expression * IDENT))) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression IDENT - IDENT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) )) + IDENT) + (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( IDENT , IDENT ))))) )) - IDENT) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression (binary_expression IDENT + IDENT) < IDENT) )))) )) - (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))))) ;) })) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor (sized_type_specifier short)) ) IDENT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT - (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) >> LIT) ))) )) - (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT < IDENT) ))))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT - IDENT) >> LIT) | (binary_expression IDENT * LIT))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (return_statement return ;) })))) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (compound_statement { (return_statement return ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (return_statement return ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (return_statement return ;) }))) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , IDENT , IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (return_statement return ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (return_statement return ;) })) (expression_statement (assignment_expression IDENT = LIT) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) != LIT) )) (compound_statement { (return_statement return ;) })) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) (compound_statement { (return_statement return ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (binary_expression IDENT >> LIT) & LIT) | (binary_expression IDENT & LIT))) ;) (goto_statement goto statement_identifier ;) })) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression LIT < (cast_expression ( (type_descriptor TYPE) ) IDENT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( 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 ))) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT)) <= (cast_expression ( (type_descriptor TYPE) ) (unary_expression - IDENT))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , (string_literal " string_content ") , IDENT ))) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))))) , (binary_expression IDENT != (binary_expression IDENT + LIT))) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )))) ;) }))) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT , LIT , LIT ))) ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression (pointer_expression * IDENT) = (binary_expression (pointer_expression * IDENT) | LIT)) ;)) (return_statement return ;) })))
(function_definition "void FUN_0004dbf0(byte *param_1,uint *param_2,undefined4 param_3)\n\n{\n  int iVar1;\n  uint *puVar2;\n  uint uVar3;\n  uint uVar4;\n  int iVar5;\n  uint *puVar6;\n  uint uVar7;\n  uint uVar9;\n  uint uVar10;\n  uint uVar11;\n  uint uVar12;\n  undefined *puVar13;\n  undefined4 uVar14;\n  uint uVar15;\n  undefined4 uVar16;\n  uint uVar17;\n  uint uVar8;\n  \n  puVar2 = *(uint **)(param_1 + 4);\n  uVar15 = *(uint *)(param_1 + 8);\n  iVar1 = (int)puVar2 + uVar15 + 0x4c;\n  uVar17 = param_2[1];\n  uVar3 = *param_2;\n  uVar4 = *(uint *)(param_1 + 0x30);\n  if (uVar4 == 0xa9) {\n    if ((*param_1 & 1) != 0) {\n      return;\n    }\n    if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }\n    uVar15 = bfd_getl32(iVar1);\n    uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }\n  else {\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    \n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }\nLAB_0004de1f:\n  FUN_000469c0(iVar1,uVar15,0,4);\nLAB_0004de31:\n  *param_1 = *param_1 | 0x20;\n  return;\n}" (primitive_type "void") (function_declarator "FUN_0004dbf0(byte *param_1,uint *param_2,undefined4 param_3)" (identifier "FUN_0004dbf0") (parameter_list "(byte *param_1,uint *param_2,undefined4 param_3)" (( "(") (parameter_declaration "byte *param_1" (type_identifier "byte") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "uint *param_2" (type_identifier "uint") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) (, ",") (parameter_declaration "undefined4 param_3" (type_identifier "undefined4") (identifier "param_3")) () ")"))) (compound_statement "{\n  int iVar1;\n  uint *puVar2;\n  uint uVar3;\n  uint uVar4;\n  int iVar5;\n  uint *puVar6;\n  uint uVar7;\n  uint uVar9;\n  uint uVar10;\n  uint uVar11;\n  uint uVar12;\n  undefined *puVar13;\n  undefined4 uVar14;\n  uint uVar15;\n  undefined4 uVar16;\n  uint uVar17;\n  uint uVar8;\n  \n  puVar2 = *(uint **)(param_1 + 4);\n  uVar15 = *(uint *)(param_1 + 8);\n  iVar1 = (int)puVar2 + uVar15 + 0x4c;\n  uVar17 = param_2[1];\n  uVar3 = *param_2;\n  uVar4 = *(uint *)(param_1 + 0x30);\n  if (uVar4 == 0xa9) {\n    if ((*param_1 & 1) != 0) {\n      return;\n    }\n    if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }\n    uVar15 = bfd_getl32(iVar1);\n    uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }\n  else {\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    \n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }\nLAB_0004de1f:\n  FUN_000469c0(iVar1,uVar15,0,4);\nLAB_0004de31:\n  *param_1 = *param_1 | 0x20;\n  return;\n}" ({ "{") (declaration "int iVar1;" (primitive_type "int") (identifier "iVar1") (; ";")) (declaration "uint *puVar2;" (type_identifier "uint") (pointer_declarator "*puVar2" (* "*") (identifier "puVar2")) (; ";")) (declaration "uint uVar3;" (type_identifier "uint") (identifier "uVar3") (; ";")) (declaration "uint uVar4;" (type_identifier "uint") (identifier "uVar4") (; ";")) (declaration "int iVar5;" (primitive_type "int") (identifier "iVar5") (; ";")) (declaration "uint *puVar6;" (type_identifier "uint") (pointer_declarator "*puVar6" (* "*") (identifier "puVar6")) (; ";")) (declaration "uint uVar7;" (type_identifier "uint") (identifier "uVar7") (; ";")) (declaration "uint uVar9;" (type_identifier "uint") (identifier "uVar9") (; ";")) (declaration "uint uVar10;" (type_identifier "uint") (identifier "uVar10") (; ";")) (declaration "uint uVar11;" (type_identifier "uint") (identifier "uVar11") (; ";")) (declaration "uint uVar12;" (type_identifier "uint") (identifier "uVar12") (; ";")) (declaration "undefined *puVar13;" (type_identifier "undefined") (pointer_declarator "*puVar13" (* "*") (identifier "puVar13")) (; ";")) (declaration "undefined4 uVar14;" (type_identifier "undefined4") (identifier "uVar14") (; ";")) (declaration "uint uVar15;" (type_identifier "uint") (identifier "uVar15") (; ";")) (declaration "undefined4 uVar16;" (type_identifier "undefined4") (identifier "uVar16") (; ";")) (declaration "uint uVar17;" (type_identifier "uint") (identifier "uVar17") (; ";")) (declaration "uint uVar8;" (type_identifier "uint") (identifier "uVar8") (; ";")) (expression_statement "puVar2 = *(uint **)(param_1 + 4);" (assignment_expression "puVar2 = *(uint **)(param_1 + 4)" (identifier "puVar2") (= "=") (pointer_expression "*(uint **)(param_1 + 4)" (* "*") (cast_expression "(uint **)(param_1 + 4)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_1 + 4)" (( "(") (binary_expression "param_1 + 4" (identifier "param_1") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "uVar15 = *(uint *)(param_1 + 8);" (assignment_expression "uVar15 = *(uint *)(param_1 + 8)" (identifier "uVar15") (= "=") (pointer_expression "*(uint *)(param_1 + 8)" (* "*") (cast_expression "(uint *)(param_1 + 8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 8)" (( "(") (binary_expression "param_1 + 8" (identifier "param_1") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "iVar1 = (int)puVar2 + uVar15 + 0x4c;" (assignment_expression "iVar1 = (int)puVar2 + uVar15 + 0x4c" (identifier "iVar1") (= "=") (binary_expression "(int)puVar2 + uVar15 + 0x4c" (binary_expression "(int)puVar2 + uVar15" (cast_expression "(int)puVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar2")) (+ "+") (identifier "uVar15")) (+ "+") (number_literal "0x4c"))) (; ";")) (expression_statement "uVar17 = param_2[1];" (assignment_expression "uVar17 = param_2[1]" (identifier "uVar17") (= "=") (subscript_expression "param_2[1]" (identifier "param_2") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "uVar3 = *param_2;" (assignment_expression "uVar3 = *param_2" (identifier "uVar3") (= "=") (pointer_expression "*param_2" (* "*") (identifier "param_2"))) (; ";")) (expression_statement "uVar4 = *(uint *)(param_1 + 0x30);" (assignment_expression "uVar4 = *(uint *)(param_1 + 0x30)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(param_1 + 0x30)" (* "*") (cast_expression "(uint *)(param_1 + 0x30)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x30)" (( "(") (binary_expression "param_1 + 0x30" (identifier "param_1") (+ "+") (number_literal "0x30")) () ")"))))) (; ";")) (if_statement "if (uVar4 == 0xa9) {\n    if ((*param_1 & 1) != 0) {\n      return;\n    }\n    if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }\n    uVar15 = bfd_getl32(iVar1);\n    uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }\n  else {\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    \n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }" (if "if") (parenthesized_expression "(uVar4 == 0xa9)" (( "(") (binary_expression "uVar4 == 0xa9" (identifier "uVar4") (== "==") (number_literal "0xa9")) () ")")) (compound_statement "{\n    if ((*param_1 & 1) != 0) {\n      return;\n    }\n    if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }\n    uVar15 = bfd_getl32(iVar1);\n    uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;\n  }" ({ "{") (if_statement "if ((*param_1 & 1) != 0) {\n      return;\n    }" (if "if") (parenthesized_expression "((*param_1 & 1) != 0)" (( "(") (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" (( "(") (binary_expression "*param_1 & 1" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      return;\n    }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (if_statement "if (*(int *)(param_1 + 0xc) != 0) {\n      return;\n    }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0xc) != 0)" (( "(") (binary_expression "*(int *)(param_1 + 0xc) != 0" (pointer_expression "*(int *)(param_1 + 0xc)" (* "*") (cast_expression "(int *)(param_1 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xc)" (( "(") (binary_expression "param_1 + 0xc" (identifier "param_1") (+ "+") (number_literal "0xc")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      return;\n    }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "uVar15 = bfd_getl32(iVar1);" (assignment_expression "uVar15 = bfd_getl32(iVar1)" (identifier "uVar15") (= "=") (call_expression "bfd_getl32(iVar1)" (identifier "bfd_getl32") (argument_list "(iVar1)" (( "(") (identifier "iVar1") () ")")))) (; ";")) (expression_statement "uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;" (assignment_expression "uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000" (identifier "uVar15") (= "=") (binary_expression "uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000" (binary_expression "uVar3 >> 2 & 0x3fff" (binary_expression "uVar3 >> 2" (identifier "uVar3") (>> ">>") (number_literal "2")) (& "&") (number_literal "0x3fff")) (| "|") (binary_expression "uVar15 & 0xffffc000" (identifier "uVar15") (& "&") (number_literal "0xffffc000")))) (; ";")) (} "}")) (else_clause "else {\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    \n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }" (else "else") (compound_statement "{\n    if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }\n    if (0x44 < uVar4) {\n      return;\n    }\n    if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }\n    if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }\nLAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }\n    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    \n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }\n    if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }\n    bfd_getl32(iVar1);\n    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));\n  }" ({ "{") (if_statement "if (0xa9 < uVar4) {\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }" (if "if") (parenthesized_expression "(0xa9 < uVar4)" (( "(") (binary_expression "0xa9 < uVar4" (number_literal "0xa9") (< "<") (identifier "uVar4")) () ")")) (compound_statement "{\n      if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }\n      goto LAB_0004dd90;\n    }" ({ "{") (if_statement "if (uVar4 < 0xbc) {\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }\n      else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }" (if "if") (parenthesized_expression "(uVar4 < 0xbc)" (( "(") (binary_expression "uVar4 < 0xbc" (identifier "uVar4") (< "<") (number_literal "0xbc")) () ")")) (compound_statement "{\n        if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }\n        if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;\n      }" ({ "{") (if_statement "if (0xb7 < uVar4) {\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }" (if "if") (parenthesized_expression "(0xb7 < uVar4)" (( "(") (binary_expression "0xb7 < uVar4" (number_literal "0xb7") (< "<") (identifier "uVar4")) () ")")) (compound_statement "{\nLAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }\n          FUN_000409b0(*(int *)(param_1 + 0xc));\n          return;\n        }" ({ "{") (labeled_statement "LAB_0004dea3:\n          if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }" (statement_identifier "LAB_0004dea3") (: ":") (if_statement "if (*(int *)(param_1 + 0xc) == 0) {\n            return;\n          }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0xc) == 0)" (( "(") (binary_expression "*(int *)(param_1 + 0xc) == 0" (pointer_expression "*(int *)(param_1 + 0xc)" (* "*") (cast_expression "(int *)(param_1 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xc)" (( "(") (binary_expression "param_1 + 0xc" (identifier "param_1") (+ "+") (number_literal "0xc")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            return;\n          }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}")))) (expression_statement "FUN_000409b0(*(int *)(param_1 + 0xc));" (call_expression "FUN_000409b0(*(int *)(param_1 + 0xc))" (identifier "FUN_000409b0") (argument_list "(*(int *)(param_1 + 0xc))" (( "(") (pointer_expression "*(int *)(param_1 + 0xc)" (* "*") (cast_expression "(int *)(param_1 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xc)" (( "(") (binary_expression "param_1 + 0xc" (identifier "param_1") (+ "+") (number_literal "0xc")) () ")")))) () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (if_statement "if (uVar4 < 0xb5) {\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }\n        else if (uVar4 == 0xb6) goto LAB_0004dea3;" (if "if") (parenthesized_expression "(uVar4 < 0xb5)" (( "(") (binary_expression "uVar4 < 0xb5" (identifier "uVar4") (< "<") (number_literal "0xb5")) () ")")) (compound_statement "{\n          if (0xb2 < uVar4) goto LAB_0004dea3;\n          if (uVar4 < 0xaf) {\n            return;\n          }\n        }" ({ "{") (if_statement "if (0xb2 < uVar4) goto LAB_0004dea3;" (if "if") (parenthesized_expression "(0xb2 < uVar4)" (( "(") (binary_expression "0xb2 < uVar4" (number_literal "0xb2") (< "<") (identifier "uVar4")) () ")")) (goto_statement "goto LAB_0004dea3;" (goto "goto") (statement_identifier "LAB_0004dea3") (; ";"))) (if_statement "if (uVar4 < 0xaf) {\n            return;\n          }" (if "if") (parenthesized_expression "(uVar4 < 0xaf)" (( "(") (binary_expression "uVar4 < 0xaf" (identifier "uVar4") (< "<") (number_literal "0xaf")) () ")")) (compound_statement "{\n            return;\n          }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (} "}")) (else_clause "else if (uVar4 == 0xb6) goto LAB_0004dea3;" (else "else") (if_statement "if (uVar4 == 0xb6) goto LAB_0004dea3;" (if "if") (parenthesized_expression "(uVar4 == 0xb6)" (( "(") (binary_expression "uVar4 == 0xb6" (identifier "uVar4") (== "==") (number_literal "0xb6")) () ")")) (goto_statement "goto LAB_0004dea3;" (goto "goto") (statement_identifier "LAB_0004dea3") (; ";"))))) (} "}")) (else_clause "else if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }" (else "else") (if_statement "if (0xbc < uVar4) {\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }" (if "if") (parenthesized_expression "(0xbc < uVar4)" (( "(") (binary_expression "0xbc < uVar4" (number_literal "0xbc") (< "<") (identifier "uVar4")) () ")")) (compound_statement "{\n        if (uVar4 < 0xc0) goto LAB_0004dea3;\n        if (uVar4 - 0x5a3 < 2) {\n          return;\n        }\n      }" ({ "{") (if_statement "if (uVar4 < 0xc0) goto LAB_0004dea3;" (if "if") (parenthesized_expression "(uVar4 < 0xc0)" (( "(") (binary_expression "uVar4 < 0xc0" (identifier "uVar4") (< "<") (number_literal "0xc0")) () ")")) (goto_statement "goto LAB_0004dea3;" (goto "goto") (statement_identifier "LAB_0004dea3") (; ";"))) (if_statement "if (uVar4 - 0x5a3 < 2) {\n          return;\n        }" (if "if") (parenthesized_expression "(uVar4 - 0x5a3 < 2)" (( "(") (binary_expression "uVar4 - 0x5a3 < 2" (binary_expression "uVar4 - 0x5a3" (identifier "uVar4") (- "-") (number_literal "0x5a3")) (< "<") (number_literal "2")) () ")")) (compound_statement "{\n          return;\n        }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (} "}"))))) (goto_statement "goto LAB_0004dd90;" (goto "goto") (statement_identifier "LAB_0004dd90") (; ";")) (} "}"))) (if_statement "if (0x46 < uVar4) {\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }" (if "if") (parenthesized_expression "(0x46 < uVar4)" (( "(") (binary_expression "0x46 < uVar4" (number_literal "0x46") (< "<") (identifier "uVar4")) () ")")) (compound_statement "{\n      if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }\n      if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }\n      goto LAB_0004dd90;\n    }" ({ "{") (if_statement "if (uVar4 == 0xa4) {\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }" (if "if") (parenthesized_expression "(uVar4 == 0xa4)" (( "(") (binary_expression "uVar4 == 0xa4" (identifier "uVar4") (== "==") (number_literal "0xa4")) () ")")) (compound_statement "{\n        uVar15 = (uint)(short)uVar3;\n        param_1[0x14] = 0;\n        param_1[0x15] = 0;\n        param_1[0x16] = 0;\n        param_1[0x17] = 0;\n        param_1[0x18] = 0;\n        param_1[0x19] = 0;\n        param_1[0x1a] = 0;\n        param_1[0x1b] = 0;\n        *param_1 = *param_1 | 0x20;\n        uVar17 = (int)uVar15 >> 0x1f;\nLAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);\n        *(undefined4 *)(param_1 + 0xc) = uVar14;\n        FUN_000469c0(iVar1,uVar15,uVar17,2);\n        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }\n        uVar14 = *(undefined4 *)(param_1 + 0x30);\n        uVar16 = dcgettext(0,"type %d reloc done?\n",5);\n        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);\n        goto LAB_0004de31;\n      }" ({ "{") (expression_statement "uVar15 = (uint)(short)uVar3;" (assignment_expression "uVar15 = (uint)(short)uVar3" (identifier "uVar15") (= "=") (cast_expression "(uint)(short)uVar3" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (cast_expression "(short)uVar3" (( "(") (type_descriptor "short" (sized_type_specifier "short" (short "short"))) () ")") (identifier "uVar3")))) (; ";")) (expression_statement "param_1[0x14] = 0;" (assignment_expression "param_1[0x14] = 0" (subscript_expression "param_1[0x14]" (identifier "param_1") ([ "[") (number_literal "0x14") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "param_1[0x15] = 0;" (assignment_expression "param_1[0x15] = 0" (subscript_expression "param_1[0x15]" (identifier "param_1") ([ "[") (number_literal "0x15") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "param_1[0x16] = 0;" (assignment_expression "param_1[0x16] = 0" (subscript_expression "param_1[0x16]" (identifier "param_1") ([ "[") (number_literal "0x16") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "param_1[0x17] = 0;" (assignment_expression "param_1[0x17] = 0" (subscript_expression "param_1[0x17]" (identifier "param_1") ([ "[") (number_literal "0x17") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "param_1[0x18] = 0;" (assignment_expression "param_1[0x18] = 0" (subscript_expression "param_1[0x18]" (identifier "param_1") ([ "[") (number_literal "0x18") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "param_1[0x19] = 0;" (assignment_expression "param_1[0x19] = 0" (subscript_expression "param_1[0x19]" (identifier "param_1") ([ "[") (number_literal "0x19") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "param_1[0x1a] = 0;" (assignment_expression "param_1[0x1a] = 0" (subscript_expression "param_1[0x1a]" (identifier "param_1") ([ "[") (number_literal "0x1a") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "param_1[0x1b] = 0;" (assignment_expression "param_1[0x1b] = 0" (subscript_expression "param_1[0x1b]" (identifier "param_1") ([ "[") (number_literal "0x1b") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "*param_1 = *param_1 | 0x20;" (assignment_expression "*param_1 = *param_1 | 0x20" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (= "=") (binary_expression "*param_1 | 0x20" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (| "|") (number_literal "0x20"))) (; ";")) (expression_statement "uVar17 = (int)uVar15 >> 0x1f;" (assignment_expression "uVar17 = (int)uVar15 >> 0x1f" (identifier "uVar17") (= "=") (binary_expression "(int)uVar15 >> 0x1f" (cast_expression "(int)uVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar15")) (>> ">>") (number_literal "0x1f"))) (; ";")) (labeled_statement "LAB_0004dcec:\n        uVar14 = FUN_0003c2e0(param_3);" (statement_identifier "LAB_0004dcec") (: ":") (expression_statement "uVar14 = FUN_0003c2e0(param_3);" (assignment_expression "uVar14 = FUN_0003c2e0(param_3)" (identifier "uVar14") (= "=") (call_expression "FUN_0003c2e0(param_3)" (identifier "FUN_0003c2e0") (argument_list "(param_3)" (( "(") (identifier "param_3") () ")")))) (; ";"))) (expression_statement "*(undefined4 *)(param_1 + 0xc) = uVar14;" (assignment_expression "*(undefined4 *)(param_1 + 0xc) = uVar14" (pointer_expression "*(undefined4 *)(param_1 + 0xc)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xc)" (( "(") (binary_expression "param_1 + 0xc" (identifier "param_1") (+ "+") (number_literal "0xc")) () ")")))) (= "=") (identifier "uVar14")) (; ";")) (expression_statement "FUN_000469c0(iVar1,uVar15,uVar17,2);" (call_expression "FUN_000469c0(iVar1,uVar15,uVar17,2)" (identifier "FUN_000469c0") (argument_list "(iVar1,uVar15,uVar17,2)" (( "(") (identifier "iVar1") (, ",") (identifier "uVar15") (, ",") (identifier "uVar17") (, ",") (number_literal "2") () ")"))) (; ";")) (if_statement "if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {\n          return;\n        }" (if "if") (parenthesized_expression "((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0))" (( "(") (binary_expression "(*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)" (parenthesized_expression "(*(int *)(param_1 + 0xc) != 0)" (( "(") (binary_expression "*(int *)(param_1 + 0xc) != 0" (pointer_expression "*(int *)(param_1 + 0xc)" (* "*") (cast_expression "(int *)(param_1 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xc)" (( "(") (binary_expression "param_1 + 0xc" (identifier "param_1") (+ "+") (number_literal "0xc")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "((*param_1 & 1) != 0)" (( "(") (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" (( "(") (binary_expression "*param_1 & 1" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n          return;\n        }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "uVar14 = *(undefined4 *)(param_1 + 0x30);" (assignment_expression "uVar14 = *(undefined4 *)(param_1 + 0x30)" (identifier "uVar14") (= "=") (pointer_expression "*(undefined4 *)(param_1 + 0x30)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x30)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x30)" (( "(") (binary_expression "param_1 + 0x30" (identifier "param_1") (+ "+") (number_literal "0x30")) () ")"))))) (; ";")) (expression_statement "uVar16 = dcgettext(0,"type %d reloc done?\n",5);" (assignment_expression "uVar16 = dcgettext(0,"type %d reloc done?\n",5)" (identifier "uVar16") (= "=") (call_expression "dcgettext(0,"type %d reloc done?\n",5)" (identifier "dcgettext") (argument_list "(0,"type %d reloc done?\n",5)" (( "(") (number_literal "0") (, ",") (string_literal ""type %d reloc done?\n"" (" """) (string_content "type %d reloc done?") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);" (call_expression "FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14)" (identifier "FUN_000315b0") (argument_list "(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14)" (( "(") (pointer_expression "*(undefined4 *)(param_1 + 0x3c)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x3c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3c)" (( "(") (binary_expression "param_1 + 0x3c" (identifier "param_1") (+ "+") (number_literal "0x3c")) () ")")))) (, ",") (pointer_expression "*(undefined4 *)(param_1 + 0x40)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x40)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x40)" (( "(") (binary_expression "param_1 + 0x40" (identifier "param_1") (+ "+") (number_literal "0x40")) () ")")))) (, ",") (identifier "uVar16") (, ",") (identifier "uVar14") () ")"))) (; ";")) (goto_statement "goto LAB_0004de31;" (goto "goto") (statement_identifier "LAB_0004de31") (; ";")) (} "}"))) (if_statement "if (uVar4 < 0xa5) {\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }\n      else if (0xa6 < uVar4) {\n        return;\n      }" (if "if") (parenthesized_expression "(uVar4 < 0xa5)" (( "(") (binary_expression "uVar4 < 0xa5" (identifier "uVar4") (< "<") (number_literal "0xa5")) () ")")) (compound_statement "{\n        if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }\n      }" ({ "{") (if_statement "if (uVar4 == 0xa3) {\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }" (if "if") (parenthesized_expression "(uVar4 == 0xa3)" (( "(") (binary_expression "uVar4 == 0xa3" (identifier "uVar4") (== "==") (number_literal "0xa3")) () ")")) (compound_statement "{\n          iVar5 = *(int *)(param_1 + 0x28);\n          if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }\n          param_1[0x30] = 0xa5;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          uVar15 = (uint)(short)uVar3;\n          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);\n          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;\n          uVar17 = uVar17 >> 0x10;\n          goto LAB_0004dcec;\n        }" ({ "{") (expression_statement "iVar5 = *(int *)(param_1 + 0x28);" (assignment_expression "iVar5 = *(int *)(param_1 + 0x28)" (identifier "iVar5") (= "=") (pointer_expression "*(int *)(param_1 + 0x28)" (* "*") (cast_expression "(int *)(param_1 + 0x28)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x28)" (( "(") (binary_expression "param_1 + 0x28" (identifier "param_1") (+ "+") (number_literal "0x28")) () ")"))))) (; ";")) (if_statement "if (iVar5 != 0) {\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }" (if "if") (parenthesized_expression "(iVar5 != 0)" (( "(") (binary_expression "iVar5 != 0" (identifier "iVar5") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n            puVar6 = *(uint **)(iVar5 + 4);\n            uVar4 = *(uint *)(iVar5 + 8);\n            uVar7 = *puVar6;\n            uVar8 = *puVar6;\n            uVar9 = puVar6[1];\n            uVar10 = *puVar2;\n            uVar12 = (uVar4 + uVar8) - *puVar2;\n            uVar11 = puVar2[1];\n            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;\n            *(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;\n          }" ({ "{") (expression_statement "puVar6 = *(uint **)(iVar5 + 4);" (assignment_expression "puVar6 = *(uint **)(iVar5 + 4)" (identifier "puVar6") (= "=") (pointer_expression "*(uint **)(iVar5 + 4)" (* "*") (cast_expression "(uint **)(iVar5 + 4)" (( "(") (type_descriptor "uint **" (type_identifier "uint") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar5 + 4)" (( "(") (binary_expression "iVar5 + 4" (identifier "iVar5") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (expression_statement "uVar4 = *(uint *)(iVar5 + 8);" (assignment_expression "uVar4 = *(uint *)(iVar5 + 8)" (identifier "uVar4") (= "=") (pointer_expression "*(uint *)(iVar5 + 8)" (* "*") (cast_expression "(uint *)(iVar5 + 8)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar5 + 8)" (( "(") (binary_expression "iVar5 + 8" (identifier "iVar5") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (expression_statement "uVar7 = *puVar6;" (assignment_expression "uVar7 = *puVar6" (identifier "uVar7") (= "=") (pointer_expression "*puVar6" (* "*") (identifier "puVar6"))) (; ";")) (expression_statement "uVar8 = *puVar6;" (assignment_expression "uVar8 = *puVar6" (identifier "uVar8") (= "=") (pointer_expression "*puVar6" (* "*") (identifier "puVar6"))) (; ";")) (expression_statement "uVar9 = puVar6[1];" (assignment_expression "uVar9 = puVar6[1]" (identifier "uVar9") (= "=") (subscript_expression "puVar6[1]" (identifier "puVar6") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "uVar10 = *puVar2;" (assignment_expression "uVar10 = *puVar2" (identifier "uVar10") (= "=") (pointer_expression "*puVar2" (* "*") (identifier "puVar2"))) (; ";")) (expression_statement "uVar12 = (uVar4 + uVar8) - *puVar2;" (assignment_expression "uVar12 = (uVar4 + uVar8) - *puVar2" (identifier "uVar12") (= "=") (binary_expression "(uVar4 + uVar8) - *puVar2" (parenthesized_expression "(uVar4 + uVar8)" (( "(") (binary_expression "uVar4 + uVar8" (identifier "uVar4") (+ "+") (identifier "uVar8")) () ")")) (- "-") (pointer_expression "*puVar2" (* "*") (identifier "puVar2")))) (; ";")) (expression_statement "uVar11 = puVar2[1];" (assignment_expression "uVar11 = puVar2[1]" (identifier "uVar11") (= "=") (subscript_expression "puVar2[1]" (identifier "puVar2") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "*(uint *)(param_1 + 0x14) = uVar12 - uVar15;" (assignment_expression "*(uint *)(param_1 + 0x14) = uVar12 - uVar15" (pointer_expression "*(uint *)(param_1 + 0x14)" (* "*") (cast_expression "(uint *)(param_1 + 0x14)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x14)" (( "(") (binary_expression "param_1 + 0x14" (identifier "param_1") (+ "+") (number_literal "0x14")) () ")")))) (= "=") (binary_expression "uVar12 - uVar15" (identifier "uVar12") (- "-") (identifier "uVar15"))) (; ";")) (expression_statement "*(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)\n            ;" (assignment_expression "*(uint *)(param_1 + 0x18) =\n                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)" (pointer_expression "*(uint *)(param_1 + 0x18)" (* "*") (cast_expression "(uint *)(param_1 + 0x18)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x18)" (( "(") (binary_expression "param_1 + 0x18" (identifier "param_1") (+ "+") (number_literal "0x18")) () ")")))) (= "=") (binary_expression "((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)" (parenthesized_expression "((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f))" (( "(") (binary_expression "(((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)" (parenthesized_expression "(((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10))" (( "(") (binary_expression "((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -\n                  (uint)(uVar4 + uVar8 < uVar10)" (parenthesized_expression "((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11)" (( "(") (binary_expression "(((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11" (parenthesized_expression "(((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7))" (( "(") (binary_expression "((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)" (binary_expression "((int)uVar4 >> 0x1f) + uVar9" (parenthesized_expression "((int)uVar4 >> 0x1f)" (( "(") (binary_expression "(int)uVar4 >> 0x1f" (cast_expression "(int)uVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar4")) (>> ">>") (number_literal "0x1f")) () ")")) (+ "+") (identifier "uVar9")) (+ "+") (cast_expression "(uint)CARRY4(uVar4,uVar7)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY4(uVar4,uVar7)" (identifier "CARRY4") (argument_list "(uVar4,uVar7)" (( "(") (identifier "uVar4") (, ",") (identifier "uVar7") () ")"))))) () ")")) (- "-") (identifier "uVar11")) () ")")) (- "-") (call_expression "(uint)(uVar4 + uVar8 < uVar10)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar4 + uVar8 < uVar10)" (( "(") (binary_expression "uVar4 + uVar8 < uVar10" (binary_expression "uVar4 + uVar8" (identifier "uVar4") (+ "+") (identifier "uVar8")) (< "<") (identifier "uVar10")) () ")")))) () ")")) (- "-") (parenthesized_expression "((int)uVar15 >> 0x1f)" (( "(") (binary_expression "(int)uVar15 >> 0x1f" (cast_expression "(int)uVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar15")) (>> ">>") (number_literal "0x1f")) () ")"))) () ")")) (- "-") (call_expression "(uint)(uVar12 < uVar15)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar12 < uVar15)" (( "(") (binary_expression "uVar12 < uVar15" (identifier "uVar12") (< "<") (identifier "uVar15")) () ")"))))) (; ";")) (} "}"))) (expression_statement "param_1[0x30] = 0xa5;" (assignment_expression "param_1[0x30] = 0xa5" (subscript_expression "param_1[0x30]" (identifier "param_1") ([ "[") (number_literal "0x30") (] "]")) (= "=") (number_literal "0xa5")) (; ";")) (expression_statement "param_1[0x31] = 0;" (assignment_expression "param_1[0x31] = 0" (subscript_expression "param_1[0x31]" (identifier "param_1") ([ "[") (number_literal "0x31") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "param_1[0x32] = 0;" (assignment_expression "param_1[0x32] = 0" (subscript_expression "param_1[0x32]" (identifier "param_1") ([ "[") (number_literal "0x32") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "param_1[0x33] = 0;" (assignment_expression "param_1[0x33] = 0" (subscript_expression "param_1[0x33]" (identifier "param_1") ([ "[") (number_literal "0x33") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar15 = (uint)(short)uVar3;" (assignment_expression "uVar15 = (uint)(short)uVar3" (identifier "uVar15") (= "=") (cast_expression "(uint)(short)uVar3" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (cast_expression "(short)uVar3" (( "(") (type_descriptor "short" (sized_type_specifier "short" (short "short"))) () ")") (identifier "uVar3")))) (; ";")) (expression_statement "uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);" (assignment_expression "uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15)" (identifier "uVar17") (= "=") (binary_expression "(uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15)" (parenthesized_expression "(uVar17 - ((int)uVar15 >> 0x1f))" (( "(") (binary_expression "uVar17 - ((int)uVar15 >> 0x1f)" (identifier "uVar17") (- "-") (parenthesized_expression "((int)uVar15 >> 0x1f)" (( "(") (binary_expression "(int)uVar15 >> 0x1f" (cast_expression "(int)uVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar15")) (>> ">>") (number_literal "0x1f")) () ")"))) () ")")) (- "-") (call_expression "(uint)(uVar3 < uVar15)" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (argument_list "(uVar3 < uVar15)" (( "(") (binary_expression "uVar3 < uVar15" (identifier "uVar3") (< "<") (identifier "uVar15")) () ")"))))) (; ";")) (expression_statement "uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;" (assignment_expression "uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000" (identifier "uVar15") (= "=") (binary_expression "uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000" (binary_expression "uVar3 - uVar15 >> 0x10" (binary_expression "uVar3 - uVar15" (identifier "uVar3") (- "-") (identifier "uVar15")) (>> ">>") (number_literal "0x10")) (| "|") (binary_expression "uVar17 * 0x10000" (identifier "uVar17") (* "*") (number_literal "0x10000")))) (; ";")) (expression_statement "uVar17 = uVar17 >> 0x10;" (assignment_expression "uVar17 = uVar17 >> 0x10" (identifier "uVar17") (= "=") (binary_expression "uVar17 >> 0x10" (identifier "uVar17") (>> ">>") (number_literal "0x10"))) (; ";")) (goto_statement "goto LAB_0004dcec;" (goto "goto") (statement_identifier "LAB_0004dcec") (; ";")) (} "}"))) (} "}")) (else_clause "else if (0xa6 < uVar4) {\n        return;\n      }" (else "else") (if_statement "if (0xa6 < uVar4) {\n        return;\n      }" (if "if") (parenthesized_expression "(0xa6 < uVar4)" (( "(") (binary_expression "0xa6 < uVar4" (number_literal "0xa6") (< "<") (identifier "uVar4")) () ")")) (compound_statement "{\n        return;\n      }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))))) (goto_statement "goto LAB_0004dd90;" (goto "goto") (statement_identifier "LAB_0004dd90") (; ";")) (} "}"))) (if_statement "if (0x44 < uVar4) {\n      return;\n    }" (if "if") (parenthesized_expression "(0x44 < uVar4)" (( "(") (binary_expression "0x44 < uVar4" (number_literal "0x44") (< "<") (identifier "uVar4")) () ")")) (compound_statement "{\n      return;\n    }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (if_statement "if (uVar4 == 2) {\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }" (if "if") (parenthesized_expression "(uVar4 == 2)" (( "(") (binary_expression "uVar4 == 2" (identifier "uVar4") (== "==") (number_literal "2")) () ")")) (compound_statement "{\n      if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }\n      uVar14 = 4;\nLAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }\n      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);\n      goto LAB_0004de31;\n    }" ({ "{") (if_statement "if ((*param_1 & 1) != 0) {\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }" (if "if") (parenthesized_expression "((*param_1 & 1) != 0)" (( "(") (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" (( "(") (binary_expression "*param_1 & 1" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        param_1[0x30] = 9;\n        param_1[0x31] = 0;\n        param_1[0x32] = 0;\n        param_1[0x33] = 0;\n        return;\n      }" ({ "{") (expression_statement "param_1[0x30] = 9;" (assignment_expression "param_1[0x30] = 9" (subscript_expression "param_1[0x30]" (identifier "param_1") ([ "[") (number_literal "0x30") (] "]")) (= "=") (number_literal "9")) (; ";")) (expression_statement "param_1[0x31] = 0;" (assignment_expression "param_1[0x31] = 0" (subscript_expression "param_1[0x31]" (identifier "param_1") ([ "[") (number_literal "0x31") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "param_1[0x32] = 0;" (assignment_expression "param_1[0x32] = 0" (subscript_expression "param_1[0x32]" (identifier "param_1") ([ "[") (number_literal "0x32") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "param_1[0x33] = 0;" (assignment_expression "param_1[0x33] = 0" (subscript_expression "param_1[0x33]" (identifier "param_1") ([ "[") (number_literal "0x33") (] "]")) (= "=") (number_literal "0")) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "uVar14 = 4;" (assignment_expression "uVar14 = 4" (identifier "uVar14") (= "=") (number_literal "4")) (; ";")) (labeled_statement "LAB_0004de57:\n      if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }" (statement_identifier "LAB_0004de57") (: ":") (if_statement "if (*(int *)(param_1 + 0xc) != 0) {\n        return;\n      }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0xc) != 0)" (( "(") (binary_expression "*(int *)(param_1 + 0xc) != 0" (pointer_expression "*(int *)(param_1 + 0xc)" (* "*") (cast_expression "(int *)(param_1 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xc)" (( "(") (binary_expression "param_1 + 0xc" (identifier "param_1") (+ "+") (number_literal "0xc")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        return;\n      }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}")))) (expression_statement "FUN_000469c0(iVar1,uVar3,uVar17,uVar14);" (call_expression "FUN_000469c0(iVar1,uVar3,uVar17,uVar14)" (identifier "FUN_000469c0") (argument_list "(iVar1,uVar3,uVar17,uVar14)" (( "(") (identifier "iVar1") (, ",") (identifier "uVar3") (, ",") (identifier "uVar17") (, ",") (identifier "uVar14") () ")"))) (; ";")) (goto_statement "goto LAB_0004de31;" (goto "goto") (statement_identifier "LAB_0004de31") (; ";")) (} "}"))) (if_statement "if (uVar4 < 3) {\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }\n    else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }" (if "if") (parenthesized_expression "(uVar4 < 3)" (( "(") (binary_expression "uVar4 < 3" (identifier "uVar4") (< "<") (number_literal "3")) () ")")) (compound_statement "{\n      if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }\n    }" ({ "{") (if_statement "if (uVar4 == 1) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }" (if "if") (parenthesized_expression "(uVar4 == 1)" (( "(") (binary_expression "uVar4 == 1" (identifier "uVar4") (== "==") (number_literal "1")) () ")")) (compound_statement "{\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 8;\n        goto LAB_0004de57;\n      }" ({ "{") (if_statement "if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }" (if "if") (parenthesized_expression "((*param_1 & 1) != 0)" (( "(") (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" (( "(") (binary_expression "*param_1 & 1" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          param_1[0x30] = 8;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }" ({ "{") (expression_statement "param_1[0x30] = 8;" (assignment_expression "param_1[0x30] = 8" (subscript_expression "param_1[0x30]" (identifier "param_1") ([ "[") (number_literal "0x30") (] "]")) (= "=") (number_literal "8")) (; ";")) (expression_statement "param_1[0x31] = 0;" (assignment_expression "param_1[0x31] = 0" (subscript_expression "param_1[0x31]" (identifier "param_1") ([ "[") (number_literal "0x31") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "param_1[0x32] = 0;" (assignment_expression "param_1[0x32] = 0" (subscript_expression "param_1[0x32]" (identifier "param_1") ([ "[") (number_literal "0x32") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "param_1[0x33] = 0;" (assignment_expression "param_1[0x33] = 0" (subscript_expression "param_1[0x33]" (identifier "param_1") ([ "[") (number_literal "0x33") (] "]")) (= "=") (number_literal "0")) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "uVar14 = 8;" (assignment_expression "uVar14 = 8" (identifier "uVar14") (= "=") (number_literal "8")) (; ";")) (goto_statement "goto LAB_0004de57;" (goto "goto") (statement_identifier "LAB_0004de57") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }" (else "else") (compound_statement "{\n      if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }\n      if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }\n    }" ({ "{") (if_statement "if (uVar4 == 5) {\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }" (if "if") (parenthesized_expression "(uVar4 == 5)" (( "(") (binary_expression "uVar4 == 5" (identifier "uVar4") (== "==") (number_literal "5")) () ")")) (compound_statement "{\n        if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }\n        uVar14 = 2;\n        goto LAB_0004de57;\n      }" ({ "{") (if_statement "if ((*param_1 & 1) != 0) {\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }" (if "if") (parenthesized_expression "((*param_1 & 1) != 0)" (( "(") (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" (( "(") (binary_expression "*param_1 & 1" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          param_1[0x30] = 0xb;\n          param_1[0x31] = 0;\n          param_1[0x32] = 0;\n          param_1[0x33] = 0;\n          return;\n        }" ({ "{") (expression_statement "param_1[0x30] = 0xb;" (assignment_expression "param_1[0x30] = 0xb" (subscript_expression "param_1[0x30]" (identifier "param_1") ([ "[") (number_literal "0x30") (] "]")) (= "=") (number_literal "0xb")) (; ";")) (expression_statement "param_1[0x31] = 0;" (assignment_expression "param_1[0x31] = 0" (subscript_expression "param_1[0x31]" (identifier "param_1") ([ "[") (number_literal "0x31") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "param_1[0x32] = 0;" (assignment_expression "param_1[0x32] = 0" (subscript_expression "param_1[0x32]" (identifier "param_1") ([ "[") (number_literal "0x32") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "param_1[0x33] = 0;" (assignment_expression "param_1[0x33] = 0" (subscript_expression "param_1[0x33]" (identifier "param_1") ([ "[") (number_literal "0x33") (] "]")) (= "=") (number_literal "0")) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "uVar14 = 2;" (assignment_expression "uVar14 = 2" (identifier "uVar14") (= "=") (number_literal "2")) (; ";")) (goto_statement "goto LAB_0004de57;" (goto "goto") (statement_identifier "LAB_0004de57") (; ";")) (} "}"))) (if_statement "if (uVar4 == 0x42) {\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }" (if "if") (parenthesized_expression "(uVar4 == 0x42)" (( "(") (binary_expression "uVar4 == 0x42" (identifier "uVar4") (== "==") (number_literal "0x42")) () ")")) (compound_statement "{\n        if ((*param_1 & 1) != 0) {\n          return;\n        }\n        if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }\n        uVar15 = bfd_getl32(iVar1);\n        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;\n        goto LAB_0004de1f;\n      }" ({ "{") (if_statement "if ((*param_1 & 1) != 0) {\n          return;\n        }" (if "if") (parenthesized_expression "((*param_1 & 1) != 0)" (( "(") (binary_expression "(*param_1 & 1) != 0" (parenthesized_expression "(*param_1 & 1)" (( "(") (binary_expression "*param_1 & 1" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          return;\n        }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (if_statement "if (*(int *)(param_1 + 0xc) != 0) {\n          return;\n        }" (if "if") (parenthesized_expression "(*(int *)(param_1 + 0xc) != 0)" (( "(") (binary_expression "*(int *)(param_1 + 0xc) != 0" (pointer_expression "*(int *)(param_1 + 0xc)" (* "*") (cast_expression "(int *)(param_1 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xc)" (( "(") (binary_expression "param_1 + 0xc" (identifier "param_1") (+ "+") (number_literal "0xc")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          return;\n        }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "uVar15 = bfd_getl32(iVar1);" (assignment_expression "uVar15 = bfd_getl32(iVar1)" (identifier "uVar15") (= "=") (call_expression "bfd_getl32(iVar1)" (identifier "bfd_getl32") (argument_list "(iVar1)" (( "(") (identifier "iVar1") () ")")))) (; ";")) (expression_statement "uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;" (assignment_expression "uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000" (identifier "uVar15") (= "=") (binary_expression "uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000" (binary_expression "uVar3 >> 2 & 0x1fffff" (binary_expression "uVar3 >> 2" (identifier "uVar3") (>> ">>") (number_literal "2")) (& "&") (number_literal "0x1fffff")) (| "|") (binary_expression "uVar15 & 0xffe00000" (identifier "uVar15") (& "&") (number_literal "0xffe00000")))) (; ";")) (goto_statement "goto LAB_0004de1f;" (goto "goto") (statement_identifier "LAB_0004de1f") (; ";")) (} "}"))) (} "}")))) (labeled_statement "LAB_0004dd90:\n    if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }" (statement_identifier "LAB_0004dd90") (: ":") (if_statement "if (-1 < (int)uVar4) {\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }" (if "if") (parenthesized_expression "(-1 < (int)uVar4)" (( "(") (binary_expression "-1 < (int)uVar4" (number_literal "-1") (< "<") (cast_expression "(int)uVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar4"))) () ")")) (compound_statement "{\n      uVar14 = bfd_get_reloc_code_name(uVar4);\n      uVar16 = dcgettext(0,"unhandled relocation type %s",5);\n                    \n      FUN_000316c0(uVar16,uVar14);\n    }" ({ "{") (expression_statement "uVar14 = bfd_get_reloc_code_name(uVar4);" (assignment_expression "uVar14 = bfd_get_reloc_code_name(uVar4)" (identifier "uVar14") (= "=") (call_expression "bfd_get_reloc_code_name(uVar4)" (identifier "bfd_get_reloc_code_name") (argument_list "(uVar4)" (( "(") (identifier "uVar4") () ")")))) (; ";")) (expression_statement "uVar16 = dcgettext(0,"unhandled relocation type %s",5);" (assignment_expression "uVar16 = dcgettext(0,"unhandled relocation type %s",5)" (identifier "uVar16") (= "=") (call_expression "dcgettext(0,"unhandled relocation type %s",5)" (identifier "dcgettext") (argument_list "(0,"unhandled relocation type %s",5)" (( "(") (number_literal "0") (, ",") (string_literal ""unhandled relocation type %s"" (" """) (string_content "unhandled relocation type %s") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_000316c0(uVar16,uVar14);" (call_expression "FUN_000316c0(uVar16,uVar14)" (identifier "FUN_000316c0") (argument_list "(uVar16,uVar14)" (( "(") (identifier "uVar16") (, ",") (identifier "uVar14") () ")"))) (; ";")) (} "}")))) (if_statement "if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {\n                    \n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }" (if "if") (parenthesized_expression "(*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4)" (( "(") (binary_expression "*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4" (pointer_expression "*(int *)PTR_alpha_num_operands_00077fcc" (* "*") (cast_expression "(int *)PTR_alpha_num_operands_00077fcc" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "PTR_alpha_num_operands_00077fcc"))) (<= "<=") (cast_expression "(int)-uVar4" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (unary_expression "-uVar4" (- "-") (identifier "uVar4")))) () ")")) (compound_statement "{\n                    \n      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);\n    }" ({ "{") (expression_statement "FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);" (call_expression "FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15)" (identifier "FUN_00031740") (argument_list "("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15)" (( "(") (string_literal ""../../gas/config/tc-alpha.c"" (" """) (string_content "../../gas/config/tc-alpha.c") (" """)) (, ",") (number_literal "0x1739") (, ",") (string_literal ""md_apply_fix"" (" """) (string_content "md_apply_fix") (" """)) (, ",") (identifier "uVar15") () ")"))) (; ";")) (} "}"))) (if_statement "if ((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }" (if "if") (parenthesized_expression "((*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180))" (( "(") (binary_expression "(*(int *)(param_1 + 0xc) != 0) &&\n       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)" (parenthesized_expression "(*(int *)(param_1 + 0xc) != 0)" (( "(") (binary_expression "*(int *)(param_1 + 0xc) != 0" (pointer_expression "*(int *)(param_1 + 0xc)" (* "*") (cast_expression "(int *)(param_1 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xc)" (( "(") (binary_expression "param_1 + 0xc" (identifier "param_1") (+ "+") (number_literal "0xc")) () ")")))) (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)" (( "(") (comma_expression "puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),\n       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180" (assignment_expression "puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc))" (identifier "puVar13") (= "=") (cast_expression "(undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc))" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_0003e1d0(*(int *)(param_1 + 0xc))" (identifier "FUN_0003e1d0") (argument_list "(*(int *)(param_1 + 0xc))" (( "(") (pointer_expression "*(int *)(param_1 + 0xc)" (* "*") (cast_expression "(int *)(param_1 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0xc)" (( "(") (binary_expression "param_1 + 0xc" (identifier "param_1") (+ "+") (number_literal "0xc")) () ")")))) () ")"))))) (, ",") (binary_expression "puVar13 != PTR__bfd_std_section_00077fa0 + 0x180" (identifier "puVar13") (!= "!=") (binary_expression "PTR__bfd_std_section_00077fa0 + 0x180" (identifier "PTR__bfd_std_section_00077fa0") (+ "+") (number_literal "0x180")))) () ")"))) () ")")) (compound_statement "{\n      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);\n      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);\n    }" ({ "{") (expression_statement "uVar14 = dcgettext(0,"non-absolute expression in constant field",5);" (assignment_expression "uVar14 = dcgettext(0,"non-absolute expression in constant field",5)" (identifier "uVar14") (= "=") (call_expression "dcgettext(0,"non-absolute expression in constant field",5)" (identifier "dcgettext") (argument_list "(0,"non-absolute expression in constant field",5)" (( "(") (number_literal "0") (, ",") (string_literal ""non-absolute expression in constant field"" (" """) (string_content "non-absolute expression in constant field") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);" (call_expression "FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14)" (identifier "FUN_00031670") (argument_list "(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14)" (( "(") (pointer_expression "*(undefined4 *)(param_1 + 0x3c)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x3c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3c)" (( "(") (binary_expression "param_1 + 0x3c" (identifier "param_1") (+ "+") (number_literal "0x3c")) () ")")))) (, ",") (pointer_expression "*(undefined4 *)(param_1 + 0x40)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x40)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x40)" (( "(") (binary_expression "param_1 + 0x40" (identifier "param_1") (+ "+") (number_literal "0x40")) () ")")))) (, ",") (identifier "uVar14") () ")"))) (; ";")) (} "}"))) (expression_statement "bfd_getl32(iVar1);" (call_expression "bfd_getl32(iVar1)" (identifier "bfd_getl32") (argument_list "(iVar1)" (( "(") (identifier "iVar1") () ")"))) (; ";")) (expression_statement "uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40));" (assignment_expression "uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40))" (identifier "uVar15") (= "=") (call_expression "FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40))" (identifier "FUN_00047ad0") (argument_list "(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),\n                          *(undefined4 *)(param_1 + 0x40))" (( "(") (identifier "uVar3") (, ",") (identifier "uVar17") (, ",") (pointer_expression "*(undefined4 *)(param_1 + 0x3c)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x3c)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x3c)" (( "(") (binary_expression "param_1 + 0x3c" (identifier "param_1") (+ "+") (number_literal "0x3c")) () ")")))) (, ",") (pointer_expression "*(undefined4 *)(param_1 + 0x40)" (* "*") (cast_expression "(undefined4 *)(param_1 + 0x40)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_1 + 0x40)" (( "(") (binary_expression "param_1 + 0x40" (identifier "param_1") (+ "+") (number_literal "0x40")) () ")")))) () ")")))) (; ";")) (} "}")))) (labeled_statement "LAB_0004de1f:\n  FUN_000469c0(iVar1,uVar15,0,4);" (statement_identifier "LAB_0004de1f") (: ":") (expression_statement "FUN_000469c0(iVar1,uVar15,0,4);" (call_expression "FUN_000469c0(iVar1,uVar15,0,4)" (identifier "FUN_000469c0") (argument_list "(iVar1,uVar15,0,4)" (( "(") (identifier "iVar1") (, ",") (identifier "uVar15") (, ",") (number_literal "0") (, ",") (number_literal "4") () ")"))) (; ";"))) (labeled_statement "LAB_0004de31:\n  *param_1 = *param_1 | 0x20;" (statement_identifier "LAB_0004de31") (: ":") (expression_statement "*param_1 = *param_1 | 0x20;" (assignment_expression "*param_1 = *param_1 | 0x20" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (= "=") (binary_expression "*param_1 | 0x20" (pointer_expression "*param_1" (* "*") (identifier "param_1")) (| "|") (number_literal "0x20"))) (; ";"))) (return_statement "return;" (return "return") (; ";")) (} "}")))

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

void function_1(type_1 *var_5,type_2 *var_2,type_3 seg)

{
  type_4 *pfVar1;
  type_5 var_7;
  type_6 var_3;
  type_7 *var_26;
  type_4 *pfVar5;
  int var_30;
  int var_32;
  type_2 val;
  type_8 aVar8;
  type_8 aVar9;
  type_5 var_28;
  type_5 var_29;
  type_9 *psVar12;
  type_10 *operand;
  type_3 var_46;
  char *format;
  int var_33;
  type_5 var_1;
  type_11 uVar16;
  char *pcVar17;
  type_5 var_27;
  
  pfVar1 = var_5->fx_frag;
  var_1 = var_5->fx_where;
  pcVar17 = pfVar1->fr_literal + var_1;
  var_33 = *(int *)((int)var_2 + 4);
  var_7 = (type_5)*var_2;
  val = *var_2;
  var_3 = var_5->fx_r_type;
  if (var_3 == var_4) {
    if ((type_12  [76])((type_12  [76])*var_5 & (type_12  [76])0x1) != (type_12  [76])0x0
       ) {
      return;
    }
    if (var_5->fx_addsy != (type_9 *)0x0) {
      return;
    }
    var_1 = var_6(pcVar17);
    var_1 = var_7 >> 2 & 0x3fff | var_1 & 0xffffc000;
  }
  else {
    if (var_4 < var_3) {
      if (var_3 < var_8) {
        if (var_9 < var_3) {
LAB_0004dea3:
          if (var_5->fx_addsy == (type_9 *)0x0) {
            return;
          }
          var_10(var_5->fx_addsy);
          return;
        }
        if (var_3 < var_11) {
          if (var_12 < var_3) goto LAB_0004dea3;
          if (var_3 < var_13) {
            return;
          }
        }
        else if (var_3 == var_14) goto LAB_0004dea3;
      }
      else if (var_8 < var_3) {
        if (var_3 < var_15) goto LAB_0004dea3;
        if (var_3 - var_16 < 2) {
          return;
        }
      }
      goto LAB_0004dd90;
    }
    if (var_17 < var_3) {
      if (var_3 == var_18) {
        var_1 = (type_5)(short)var_7;
        *(type_11 *)&var_5->fx_offset = 0;
        *(type_11 *)((int)&var_5->fx_offset + 4) = 0;
        *(type_13 *)var_5 = *(type_13 *)var_5 | 0x20;
        var_27 = (int)var_1 >> 0x1f;
LAB_0004dcec:
        psVar12 = var_19(seg);
        var_5->fx_addsy = psVar12;
        var_20(pcVar17,var_21(var_27,var_1),2);
        if ((var_5->fx_addsy != (type_9 *)0x0) ||
           ((type_12  [76])((type_12  [76])*var_5 & (type_12  [76])0x1) !=
            (type_12  [76])0x0)) {
          return;
        }
        var_3 = var_5->fx_r_type;
        pcVar17 = (char *)var_22(0,"type %d reloc done?\n",5);
        var_23(var_5->fx_file,var_5->fx_line,pcVar17,var_3);
        goto LAB_0004de31;
      }
      if (var_3 < var_24) {
        if (var_3 == var_25) {
          var_26 = var_5->fx_next;
          if (var_26 != (type_7 *)0x0) {
            pfVar5 = var_26->fx_frag;
            var_27 = var_26->fx_where;
            aVar8 = pfVar5->fr_address;
            var_28 = var_27 + (int)pfVar5->fr_address;
            var_30 = *(int *)((int)&pfVar5->fr_address + 4);
            aVar9 = pfVar1->fr_address;
            var_29 = var_28 - (int)pfVar1->fr_address;
            var_32 = *(int *)((int)&pfVar1->fr_address + 4);
            *(type_5 *)&var_5->fx_offset = var_29 - var_1;
            *(type_5 *)((int)&var_5->fx_offset + 4) =
                 ((((((int)var_27 >> 0x1f) + var_30 + (type_5)var_31(var_27,(type_5)aVar8)) - var_32) -
                  (type_5)(var_28 < (type_5)aVar9)) - ((int)var_1 >> 0x1f)) - (type_5)(var_29 < var_1);
          }
          var_5->fx_r_type = var_24;
          var_1 = (type_5)(short)var_7;
          var_27 = (var_33 - ((int)var_1 >> 0x1f)) - (type_5)(var_7 < var_1);
          var_1 = var_7 - var_1 >> 0x10 | var_27 * 0x10000;
          var_27 = var_27 >> 0x10;
          goto LAB_0004dcec;
        }
      }
      else if (var_34 < var_3) {
        return;
      }
      goto LAB_0004dd90;
    }
    if (var_35 < var_3) {
      return;
    }
    if (var_3 == var_36) {
      if ((type_12  [76])((type_12  [76])*var_5 & (type_12  [76])0x1) !=
          (type_12  [76])0x0) {
        var_5->fx_r_type = BFD_RELOC_32_PCREL;
        return;
      }
      var_33 = 4;
LAB_0004de57:
      if (var_5->fx_addsy != (type_9 *)0x0) {
        return;
      }
      var_20(pcVar17,*var_2,var_33);
      goto LAB_0004de31;
    }
    if (var_3 < var_37) {
      if (var_3 == var_38) {
        if ((type_12  [76])((type_12  [76])*var_5 & (type_12  [76])0x1) !=
            (type_12  [76])0x0) {
          var_5->fx_r_type = BFD_RELOC_64_PCREL;
          return;
        }
        var_33 = 8;
        goto LAB_0004de57;
      }
    }
    else {
      if (var_3 == var_39) {
        if ((type_12  [76])((type_12  [76])*var_5 & (type_12  [76])0x1) !=
            (type_12  [76])0x0) {
          var_5->fx_r_type = BFD_RELOC_16_PCREL;
          return;
        }
        var_33 = 2;
        goto LAB_0004de57;
      }
      if (var_3 == var_40) {
        if ((type_12  [76])((type_12  [76])*var_5 & (type_12  [76])0x1) !=
            (type_12  [76])0x0) {
          return;
        }
        if (var_5->fx_addsy != (type_9 *)0x0) {
          return;
        }
        var_1 = var_6(pcVar17);
        var_1 = var_7 >> 2 & 0x1fffff | var_1 & 0xffe00000;
        goto LAB_0004de1f;
      }
    }
LAB_0004dd90:
    if (-1 < (int)var_3) {
      uVar16 = var_41(var_3);
      pcVar17 = (char *)var_22(0,"unhandled relocation type %s",5);
                    /* WARNING: Subroutine does not return */
      var_42(pcVar17,uVar16);
    }
    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-var_3) {
                    /* WARNING: Subroutine does not return */
      var_43("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix");
    }
    operand = (type_10 *)(var_44 + var_3 * -0x10);
    if ((var_5->fx_addsy != (type_9 *)0x0) &&
       (var_46 = var_45(var_5->fx_addsy),
       var_46 != (type_3)(var_47 + 0x180))) {
      format = (char *)var_22(0,"non-absolute expression in constant field",5);
      var_48(var_5->fx_file,var_5->fx_line,format);
    }
    var_1 = var_6(pcVar17);
    var_1 = var_49(var_1,operand,val,var_5->fx_file,var_5->fx_line);
  }
LAB_0004de1f:
  var_20(pcVar17,(type_14)var_1,4);
LAB_0004de31:
  *(type_13 *)var_5 = *(type_13 *)var_5 | 0x20;
  return;
}


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

/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */

void MASKED(byte *param_1,uint *param_2,undefined4 param_3)

{
  int iVar1;
  uint *puVar2;
  uint uVar3;
  uint uVar4;
  int iVar5;
  uint *puVar6;
  uint uVar7;
  uint uVar9;
  uint uVar10;
  uint uVar11;
  uint uVar12;
  undefined *puVar13;
  undefined4 uVar14;
  uint uVar15;
  undefined4 uVar16;
  uint uVar17;
  uint uVar8;
  
  puVar2 = *(uint **)(param_1 + 4);
  uVar15 = *(uint *)(param_1 + 8);
  iVar1 = (int)puVar2 + uVar15 + 0x4c;
  uVar17 = param_2[1];
  uVar3 = *param_2;
  uVar4 = *(uint *)(param_1 + 0x30);
  if (uVar4 == 0xa9) {
    if ((*param_1 & 1) != 0) {
      return;
    }
    if (*(int *)(param_1 + 0xc) != 0) {
      return;
    }
    uVar15 = bfd_getl32(iVar1);
    uVar15 = uVar3 >> 2 & 0x3fff | uVar15 & 0xffffc000;
  }
  else {
    if (0xa9 < uVar4) {
      if (uVar4 < 0xbc) {
        if (0xb7 < uVar4) {
LAB_0004dea3:
          if (*(int *)(param_1 + 0xc) == 0) {
            return;
          }
          FUN_000409b0(*(int *)(param_1 + 0xc));
          return;
        }
        if (uVar4 < 0xb5) {
          if (0xb2 < uVar4) goto LAB_0004dea3;
          if (uVar4 < 0xaf) {
            return;
          }
        }
        else if (uVar4 == 0xb6) goto LAB_0004dea3;
      }
      else if (0xbc < uVar4) {
        if (uVar4 < 0xc0) goto LAB_0004dea3;
        if (uVar4 - 0x5a3 < 2) {
          return;
        }
      }
      goto LAB_0004dd90;
    }
    if (0x46 < uVar4) {
      if (uVar4 == 0xa4) {
        uVar15 = (uint)(short)uVar3;
        param_1[0x14] = 0;
        param_1[0x15] = 0;
        param_1[0x16] = 0;
        param_1[0x17] = 0;
        param_1[0x18] = 0;
        param_1[0x19] = 0;
        param_1[0x1a] = 0;
        param_1[0x1b] = 0;
        *param_1 = *param_1 | 0x20;
        uVar17 = (int)uVar15 >> 0x1f;
LAB_0004dcec:
        uVar14 = FUN_0003c2e0(param_3);
        *(undefined4 *)(param_1 + 0xc) = uVar14;
        FUN_000469c0(iVar1,uVar15,uVar17,2);
        if ((*(int *)(param_1 + 0xc) != 0) || ((*param_1 & 1) != 0)) {
          return;
        }
        uVar14 = *(undefined4 *)(param_1 + 0x30);
        uVar16 = dcgettext(0,"type %d reloc done?\n",5);
        FUN_000315b0(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar16,uVar14);
        goto LAB_0004de31;
      }
      if (uVar4 < 0xa5) {
        if (uVar4 == 0xa3) {
          iVar5 = *(int *)(param_1 + 0x28);
          if (iVar5 != 0) {
            puVar6 = *(uint **)(iVar5 + 4);
            uVar4 = *(uint *)(iVar5 + 8);
            uVar7 = *puVar6;
            uVar8 = *puVar6;
            uVar9 = puVar6[1];
            uVar10 = *puVar2;
            uVar12 = (uVar4 + uVar8) - *puVar2;
            uVar11 = puVar2[1];
            *(uint *)(param_1 + 0x14) = uVar12 - uVar15;
            *(uint *)(param_1 + 0x18) =
                 ((((((int)uVar4 >> 0x1f) + uVar9 + (uint)CARRY4(uVar4,uVar7)) - uVar11) -
                  (uint)(uVar4 + uVar8 < uVar10)) - ((int)uVar15 >> 0x1f)) - (uint)(uVar12 < uVar15)
            ;
          }
          param_1[0x30] = 0xa5;
          param_1[0x31] = 0;
          param_1[0x32] = 0;
          param_1[0x33] = 0;
          uVar15 = (uint)(short)uVar3;
          uVar17 = (uVar17 - ((int)uVar15 >> 0x1f)) - (uint)(uVar3 < uVar15);
          uVar15 = uVar3 - uVar15 >> 0x10 | uVar17 * 0x10000;
          uVar17 = uVar17 >> 0x10;
          goto LAB_0004dcec;
        }
      }
      else if (0xa6 < uVar4) {
        return;
      }
      goto LAB_0004dd90;
    }
    if (0x44 < uVar4) {
      return;
    }
    if (uVar4 == 2) {
      if ((*param_1 & 1) != 0) {
        param_1[0x30] = 9;
        param_1[0x31] = 0;
        param_1[0x32] = 0;
        param_1[0x33] = 0;
        return;
      }
      uVar14 = 4;
LAB_0004de57:
      if (*(int *)(param_1 + 0xc) != 0) {
        return;
      }
      FUN_000469c0(iVar1,uVar3,uVar17,uVar14);
      goto LAB_0004de31;
    }
    if (uVar4 < 3) {
      if (uVar4 == 1) {
        if ((*param_1 & 1) != 0) {
          param_1[0x30] = 8;
          param_1[0x31] = 0;
          param_1[0x32] = 0;
          param_1[0x33] = 0;
          return;
        }
        uVar14 = 8;
        goto LAB_0004de57;
      }
    }
    else {
      if (uVar4 == 5) {
        if ((*param_1 & 1) != 0) {
          param_1[0x30] = 0xb;
          param_1[0x31] = 0;
          param_1[0x32] = 0;
          param_1[0x33] = 0;
          return;
        }
        uVar14 = 2;
        goto LAB_0004de57;
      }
      if (uVar4 == 0x42) {
        if ((*param_1 & 1) != 0) {
          return;
        }
        if (*(int *)(param_1 + 0xc) != 0) {
          return;
        }
        uVar15 = bfd_getl32(iVar1);
        uVar15 = uVar3 >> 2 & 0x1fffff | uVar15 & 0xffe00000;
        goto LAB_0004de1f;
      }
    }
LAB_0004dd90:
    if (-1 < (int)uVar4) {
      uVar14 = bfd_get_reloc_code_name(uVar4);
      uVar16 = dcgettext(0,"unhandled relocation type %s",5);
                    /* WARNING: Subroutine does not return */
      FUN_000316c0(uVar16,uVar14);
    }
    if (*(int *)PTR_alpha_num_operands_00077fcc <= (int)-uVar4) {
                    /* WARNING: Subroutine does not return */
      FUN_00031740("../../gas/config/tc-alpha.c",0x1739,"md_apply_fix",uVar15);
    }
    if ((*(int *)(param_1 + 0xc) != 0) &&
       (puVar13 = (undefined *)FUN_0003e1d0(*(int *)(param_1 + 0xc)),
       puVar13 != PTR__bfd_std_section_00077fa0 + 0x180)) {
      uVar14 = dcgettext(0,"non-absolute expression in constant field",5);
      FUN_00031670(*(undefined4 *)(param_1 + 0x3c),*(undefined4 *)(param_1 + 0x40),uVar14);
    }
    bfd_getl32(iVar1);
    uVar15 = FUN_00047ad0(uVar3,uVar17,*(undefined4 *)(param_1 + 0x3c),
                          *(undefined4 *)(param_1 + 0x40));
  }
LAB_0004de1f:
  FUN_000469c0(iVar1,uVar15,0,4);
LAB_0004de31:
  *param_1 = *param_1 | 0x20;
  return;
}

