
void s_reloc(int ignore)

{
  char cVar1;
  int iVar2;
  reloc_list *__ptr;
  ulong uVar3;
  symbolS *psVar4;
  reloc_howto_type *prVar5;
  byte bVar6;
  char *pcVar7;
  _bfd_rel *p_Var8;
  uint uVar9;
  byte *stop;
  char *r_name;
  expressionS exp;
  
  __ptr = (reloc_list *)xmalloc();
  if (flag_mri == 0) {
    bVar6 = 0;
    stop = (byte *)0x0;
  }
  else {
    bVar6 = *input_line_pointer;
    cVar1 = is_end_of_line[bVar6];
    stop = (byte *)input_line_pointer;
    while (cVar1 == '\0') {
      stop = stop + 1;
      bVar6 = *stop;
      cVar1 = is_end_of_line[bVar6];
    }
    *stop = 0;
  }
  expr(0,&exp,expr_normal);
  if ((byte)exp._24_1_ < 7) {
    uVar3 = 1L << (exp._24_1_ & 0x3f);
    if ((uVar3 & 99) == 0) {
      if ((uVar3 & 8) == 0) {
        if ((uVar3 & 4) == 0) goto LAB_001212eb;
        exp.X_add_symbol = section_symbol(now_seg);
        exp._24_1_ = 3;
      }
      if (exp.X_add_number != 0) goto LAB_001212eb;
      (__ptr->u).a.offset_sym = exp.X_add_symbol;
      goto LAB_001212f7;
    }
    pcVar7 = "missing or bad offset expression";
  }
  else {
LAB_001212eb:
    psVar4 = make_expr_symbol(&exp);
    (__ptr->u).a.offset_sym = psVar4;
LAB_001212f7:
    cVar1 = *input_line_pointer;
    if (cVar1 == ' ') {
      cVar1 = input_line_pointer[1];
      input_line_pointer = input_line_pointer + 1;
    }
    if (cVar1 == ',') {
      pcVar7 = input_line_pointer + 1;
      if (input_line_pointer[1] == ' ') {
        pcVar7 = input_line_pointer + 2;
      }
      input_line_pointer = pcVar7;
      cVar1 = get_symbol_name(&r_name);
      iVar2 = strncasecmp(r_name,"BFD_RELOC_",10);
      if (iVar2 == 0) {
        uVar9 = 0;
        (__ptr->u).a.howto = (reloc_howto_type *)0x0;
        p_Var8 = s_reloc::bfd_relocs;
        iVar2 = strcasecmp(r_name + 10,"NONE");
        while (iVar2 != 0) {
          uVar9 = uVar9 + 1;
          p_Var8 = p_Var8 + 1;
          if (uVar9 == 5) goto LAB_001213d8;
          iVar2 = strcasecmp(r_name + 10,p_Var8->name);
        }
        prVar5 = (reloc_howto_type *)
                 bfd_reloc_type_lookup(stdoutput,s_reloc::bfd_relocs[uVar9].code);
        (__ptr->u).a.howto = prVar5;
      }
      else {
        prVar5 = (reloc_howto_type *)bfd_reloc_name_lookup(stdoutput,r_name);
        (__ptr->u).a.howto = prVar5;
      }
LAB_001213d8:
      pcVar7 = "unrecognized reloc type";
      *input_line_pointer = cVar1;
      if ((__ptr->u).a.howto != (reloc_howto_type *)0x0) {
        exp._24_1_ = 1;
        cVar1 = *input_line_pointer;
        if (cVar1 == '\"') {
          cVar1 = input_line_pointer[1];
          input_line_pointer = input_line_pointer + 1;
        }
        if (cVar1 == ' ') {
          cVar1 = input_line_pointer[1];
          input_line_pointer = input_line_pointer + 1;
        }
        if (cVar1 == ',') {
          input_line_pointer = input_line_pointer + 1;
          expr(0,&exp,expr_normal);
          switch(exp._24_1_) {
          case 0:
          case 5:
          case 6:
            pcVar7 = "bad reloc expression";
            goto LAB_001214f0;
          case 1:
            goto switchD_00121578_caseD_1;
          case 2:
            (__ptr->u).a.sym = (symbolS *)0x0;
            (__ptr->u).a.addend = exp.X_add_number;
            break;
          case 3:
            (__ptr->u).a.sym = exp.X_add_symbol;
            (__ptr->u).a.addend = exp.X_add_number;
            break;
          default:
            psVar4 = make_expr_symbol(&exp);
            (__ptr->u).a.addend = 0;
            (__ptr->u).a.sym = psVar4;
          }
        }
        else {
switchD_00121578_caseD_1:
          (__ptr->u).a.sym = (symbolS *)0x0;
          (__ptr->u).a.addend = 0;
        }
        pcVar7 = as_where(&__ptr->line);
        __ptr->file = pcVar7;
        __ptr->next = reloc_list;
        reloc_list = __ptr;
        demand_empty_rest_of_line();
        goto joined_r0x0012147f;
      }
    }
    else {
      pcVar7 = "missing reloc type";
    }
  }
LAB_001214f0:
  pcVar7 = (char *)dcgettext(0,pcVar7,5);
  as_bad(pcVar7);
  ignore_rest_of_line();
  free(__ptr);
joined_r0x0012147f:
  if (flag_mri == 0) {
    return;
  }
  mri_comment_end((char *)stop,(int)(char)bVar6);
  return;
}



void FUN_00121250(void)

{
  char cVar1;
  byte *pbVar2;
  byte bVar3;
  int iVar4;
  undefined8 *__ptr;
  ulong uVar5;
  undefined8 uVar6;
  byte bVar7;
  char *pcVar8;
  undefined **ppuVar9;
  uint uVar10;
  byte *pbVar11;
  char *local_60;
  undefined8 local_58 [2];
  long local_48;
  byte local_40;
  
  __ptr = (undefined8 *)xmalloc(0x48);
  if (DAT_001e4650 == 0) {
    bVar7 = 0;
    pbVar11 = (byte *)0x0;
  }
  else {
    bVar7 = *DAT_001e4780;
    cVar1 = (&DAT_001da4e0)[bVar7];
    pbVar11 = DAT_001e4780;
    while (cVar1 == '\0') {
      pbVar11 = pbVar11 + 1;
      bVar7 = *pbVar11;
      cVar1 = (&DAT_001da4e0)[bVar7];
    }
    *pbVar11 = 0;
  }
  FUN_00114ae0(0,local_58,1);
  if (local_40 < 7) {
    uVar5 = 1L << (local_40 & 0x3f);
    if ((uVar5 & 99) == 0) {
      if ((uVar5 & 8) == 0) {
        if ((uVar5 & 4) == 0) goto LAB_001212eb;
        local_58[0] = FUN_001279c0(DAT_001e44a8);
        local_40 = 3;
      }
      if (local_48 != 0) goto LAB_001212eb;
      __ptr[1] = local_58[0];
      goto LAB_001212f7;
    }
    pcVar8 = "missing or bad offset expression";
  }
  else {
LAB_001212eb:
    uVar6 = FUN_00113ee0(local_58);
    __ptr[1] = uVar6;
LAB_001212f7:
    bVar3 = *DAT_001e4780;
    if (bVar3 == 0x20) {
      bVar3 = DAT_001e4780[1];
      DAT_001e4780 = DAT_001e4780 + 1;
    }
    if (bVar3 == 0x2c) {
      pbVar2 = DAT_001e4780 + 1;
      if (DAT_001e4780[1] == 0x20) {
        pbVar2 = DAT_001e4780 + 2;
      }
      DAT_001e4780 = pbVar2;
      bVar3 = FUN_001149a0(&local_60);
      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);
      if (iVar4 == 0) {
        uVar10 = 0;
        __ptr[2] = 0;
        ppuVar9 = &PTR_DAT_001602c0;
        iVar4 = strcasecmp(local_60 + 10,"NONE");
        while (iVar4 != 0) {
          uVar10 = uVar10 + 1;
          ppuVar9 = ppuVar9 + 2;
          if (uVar10 == 5) goto LAB_001213d8;
          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);
        }
        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);
        __ptr[2] = uVar6;
      }
      else {
        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);
        __ptr[2] = uVar6;
      }
LAB_001213d8:
      pcVar8 = "unrecognized reloc type";
      *DAT_001e4780 = bVar3;
      if (__ptr[2] != 0) {
        local_40 = 1;
        bVar3 = *DAT_001e4780;
        if (bVar3 == 0x22) {
          bVar3 = DAT_001e4780[1];
          DAT_001e4780 = DAT_001e4780 + 1;
        }
        if (bVar3 == 0x20) {
          bVar3 = DAT_001e4780[1];
          DAT_001e4780 = DAT_001e4780 + 1;
        }
        if (bVar3 == 0x2c) {
          DAT_001e4780 = DAT_001e4780 + 1;
          FUN_00114ae0(0,local_58,1);
          switch(local_40) {
          case 0:
          case 5:
          case 6:
            pcVar8 = "bad reloc expression";
            goto LAB_001214f0;
          case 1:
            goto switchD_00121578_caseD_1;
          case 2:
            __ptr[3] = 0;
            __ptr[4] = local_48;
            break;
          case 3:
            __ptr[3] = local_58[0];
            __ptr[4] = local_48;
            break;
          default:
            uVar6 = FUN_00113ee0(local_58);
            __ptr[4] = 0;
            __ptr[3] = uVar6;
          }
        }
        else {
switchD_00121578_caseD_1:
          __ptr[3] = 0;
          __ptr[4] = 0;
        }
        uVar6 = FUN_00118700(__ptr + 8);
        __ptr[7] = uVar6;
        *__ptr = DAT_001e4990;
        DAT_001e4990 = __ptr;
        FUN_0011ffa0();
        goto joined_r0x0012147f;
      }
    }
    else {
      pcVar8 = "missing reloc type";
    }
  }
LAB_001214f0:
  uVar6 = dcgettext(0,pcVar8,5);
  FUN_0011da70(uVar6);
  FUN_0011fd80();
  free(__ptr);
joined_r0x0012147f:
  if (DAT_001e4650 == 0) {
    return;
  }
  FUN_0011f810(pbVar11,(int)(char)bVar7);
  return;
}


PUSH R15
MOV EDI,0x48
PUSH R14
PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
SUB RSP,0x48
CALL 0x00108748
MOV ECX,dword ptr [0x001e4650]
MOV RBP,RAX
TEST ECX,ECX
JZ 0x00121498
MOV R15,qword ptr [0x001e4780]
LEA RDX,[0x1da4e0]
MOVZX EAX,byte ptr [R15]
CMP byte ptr [RDX + RAX*0x1],0x0
MOV RBX,RAX
JNZ 0x001212a9
NOP dword ptr [RAX]
ADD R15,0x1
MOVZX EAX,byte ptr [R15]
CMP byte ptr [RDX + RAX*0x1],0x0
MOV RBX,RAX
JZ 0x00121298
MOV byte ptr [R15],0x0
LEA R13,[RSP + 0x20]
MOV EDX,0x1
XOR EDI,EDI
MOV RSI,R13
CALL 0x00114ae0
MOVZX ECX,byte ptr [RSP + 0x38]
CMP CL,0x6
JA 0x001212eb
MOV EAX,0x1
SHL RAX,CL
TEST AL,0x63
JNZ 0x00121630
TEST AL,0x8
JNZ 0x001214be
TEST AL,0x4
JNZ 0x001214a8
MOV RDI,R13
CALL 0x00113ee0
MOV qword ptr [RBP + 0x8],RAX
MOV RAX,qword ptr [0x001e4780]
MOVZX EDX,byte ptr [RAX]
CMP DL,0x20
JNZ 0x00121318
LEA RCX,[RAX + 0x1]
MOV qword ptr [0x001e4780],RCX
MOVZX EDX,byte ptr [RAX + 0x1]
MOV RAX,RCX
CMP DL,0x2c
JNZ 0x00121580
LEA RDX,[RAX + 0x1]
MOV qword ptr [0x001e4780],RDX
CMP byte ptr [RAX + 0x1],0x20
JZ 0x00121598
LEA RDI,[RSP + 0x18]
CALL 0x001149a0
MOV R12,qword ptr [RSP + 0x18]
MOV EDX,0xa
LEA RSI,[0x14e70b]
MOV byte ptr [RSP + 0xf],AL
MOV RDI,R12
CALL 0x001084b0
TEST EAX,EAX
JNZ 0x001215b0
LEA RAX,[R12 + 0xa]
LEA RSI,[0x14e6f3]
XOR R14D,R14D
MOV qword ptr [RBP + 0x10],0x0
MOV qword ptr [RSP],RAX
MOV RDI,qword ptr [RSP]
LEA R12,[0x1602c0]
CALL 0x00108070
TEST EAX,EAX
JZ 0x001213b3
ADD R14D,0x1
ADD R12,0x10
CMP R14D,0x5
JZ 0x001213d8
MOV RSI,qword ptr [R12]
MOV RDI,qword ptr [RSP]
CALL 0x00108070
TEST EAX,EAX
JNZ 0x00121394
MOV EDX,R14D
LEA RAX,[0x1602c0]
MOV RDI,qword ptr [0x001e4750]
SHL RDX,0x4
MOV ESI,dword ptr [RAX + RDX*0x1 + 0x8]
CALL 0x00108200
MOV qword ptr [RBP + 0x10],RAX
NOP dword ptr [RAX]
MOV RAX,qword ptr [0x001e4780]
MOVZX ECX,byte ptr [RSP + 0xf]
MOV EDX,0x5
LEA RSI,[0x14e716]
MOV byte ptr [RAX],CL
CMP qword ptr [RBP + 0x10],0x0
JZ 0x001214f0
MOV RAX,qword ptr [0x001e4780]
MOV byte ptr [RSP + 0x38],0x1
MOVZX EDX,byte ptr [RAX]
CMP DL,0x22
JNZ 0x00121423
LEA RCX,[RAX + 0x1]
MOV qword ptr [0x001e4780],RCX
MOVZX EDX,byte ptr [RAX + 0x1]
MOV RAX,RCX
CMP DL,0x20
JNZ 0x0012143a
LEA RCX,[RAX + 0x1]
MOV qword ptr [0x001e4780],RCX
MOVZX EDX,byte ptr [RAX + 0x1]
MOV RAX,RCX
CMP DL,0x2c
JZ 0x00121540
MOV qword ptr [RBP + 0x18],0x0
MOV qword ptr [RBP + 0x20],0x0
LEA RDI,[RBP + 0x40]
CALL 0x00118700
MOV qword ptr [RBP + 0x38],RAX
MOV RAX,qword ptr [0x001e4990]
MOV qword ptr [0x001e4990],RBP
MOV qword ptr [RBP],RAX
CALL 0x0011ffa0
MOV EAX,dword ptr [0x001e4650]
TEST EAX,EAX
JNZ 0x0012151c
ADD RSP,0x48
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
XOR EBX,EBX
XOR R15D,R15D
JMP 0x001212ad
MOV RDI,qword ptr [0x001e44a8]
CALL 0x001279c0
MOV byte ptr [RSP + 0x38],0x3
MOV qword ptr [RSP + 0x20],RAX
CMP qword ptr [RSP + 0x30],0x0
JNZ 0x001212eb
MOV RAX,qword ptr [RSP + 0x20]
MOV qword ptr [RBP + 0x8],RAX
JMP 0x001212f7
MOV EDX,0x5
LEA RSI,[0x14e72e]
NOP dword ptr [RAX]
XOR EDI,EDI
CALL 0x001081c0
MOV RDI,RAX
XOR EAX,EAX
CALL 0x0011da70
CALL 0x0011fd80
MOV RDI,RBP
CALL 0x00108740
MOV EDX,dword ptr [0x001e4650]
TEST EDX,EDX
JZ 0x00121485
MOVSX ESI,BL
MOV RDI,R15
CALL 0x0011f810
ADD RSP,0x48
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
RET
ADD RAX,0x1
XOR EDI,EDI
MOV EDX,0x1
MOV RSI,R13
MOV qword ptr [0x001e4780],RAX
CALL 0x00114ae0
CMP byte ptr [RSP + 0x38],0x6
JA 0x00121610
MOVZX EAX,byte ptr [RSP + 0x38]
LEA RDX,[0x14ec34]
MOVSXD RAX,dword ptr [RDX + RAX*0x4]
ADD RAX,RDX
JMP RAX
MOV EDX,0x5
LEA RSI,[0x14e6f8]
JMP 0x001214f0
ADD RAX,0x2
MOV qword ptr [0x001e4780],RAX
JMP 0x00121336
MOV RDI,qword ptr [0x001e4750]
MOV RSI,R12
CALL 0x00108500
MOV qword ptr [RBP + 0x10],RAX
JMP 0x001213d8
MOV RAX,qword ptr [RSP + 0x20]
MOV qword ptr [RBP + 0x18],RAX
MOV RAX,qword ptr [RSP + 0x30]
MOV qword ptr [RBP + 0x20],RAX
JMP 0x00121453
MOV RAX,qword ptr [RSP + 0x30]
MOV qword ptr [RBP + 0x18],0x0
MOV qword ptr [RBP + 0x20],RAX
JMP 0x00121453
MOV RDI,R13
CALL 0x00113ee0
MOV qword ptr [RBP + 0x20],0x0
MOV qword ptr [RBP + 0x18],RAX
JMP 0x00121453
MOV EDX,0x5
LEA RSI,[0x14dd70]
JMP 0x001214f0
(translation_unit "void FUN_00121250(void)\n\n{\n  char cVar1;\n  byte *pbVar2;\n  byte bVar3;\n  int iVar4;\n  undefined8 *__ptr;\n  ulong uVar5;\n  undefined8 uVar6;\n  byte bVar7;\n  char *pcVar8;\n  undefined **ppuVar9;\n  uint uVar10;\n  byte *pbVar11;\n  char *local_60;\n  undefined8 local_58 [2];\n  long local_48;\n  byte local_40;\n  \n  __ptr = (undefined8 *)xmalloc(0x48);\n  if (DAT_001e4650 == 0) {\n    bVar7 = 0;\n    pbVar11 = (byte *)0x0;\n  }\n  else {\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }\n  FUN_00114ae0(0,local_58,1);\n  if (local_40 < 7) {\n    uVar5 = 1L << (local_40 & 0x3f);\n    if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }\n    pcVar8 = "missing or bad offset expression";\n  }\n  else {\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }\nLAB_001214f0:\n  uVar6 = dcgettext(0,pcVar8,5);\n  FUN_0011da70(uVar6);\n  FUN_0011fd80();\n  free(__ptr);\njoined_r0x0012147f:\n  if (DAT_001e4650 == 0) {\n    return;\n  }\n  FUN_0011f810(pbVar11,(int)(char)bVar7);\n  return;\n}\n\n" (function_definition "void FUN_00121250(void)\n\n{\n  char cVar1;\n  byte *pbVar2;\n  byte bVar3;\n  int iVar4;\n  undefined8 *__ptr;\n  ulong uVar5;\n  undefined8 uVar6;\n  byte bVar7;\n  char *pcVar8;\n  undefined **ppuVar9;\n  uint uVar10;\n  byte *pbVar11;\n  char *local_60;\n  undefined8 local_58 [2];\n  long local_48;\n  byte local_40;\n  \n  __ptr = (undefined8 *)xmalloc(0x48);\n  if (DAT_001e4650 == 0) {\n    bVar7 = 0;\n    pbVar11 = (byte *)0x0;\n  }\n  else {\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }\n  FUN_00114ae0(0,local_58,1);\n  if (local_40 < 7) {\n    uVar5 = 1L << (local_40 & 0x3f);\n    if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }\n    pcVar8 = "missing or bad offset expression";\n  }\n  else {\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }\nLAB_001214f0:\n  uVar6 = dcgettext(0,pcVar8,5);\n  FUN_0011da70(uVar6);\n  FUN_0011fd80();\n  free(__ptr);\njoined_r0x0012147f:\n  if (DAT_001e4650 == 0) {\n    return;\n  }\n  FUN_0011f810(pbVar11,(int)(char)bVar7);\n  return;\n}" primitive_type (function_declarator "FUN_00121250(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  char cVar1;\n  byte *pbVar2;\n  byte bVar3;\n  int iVar4;\n  undefined8 *__ptr;\n  ulong uVar5;\n  undefined8 uVar6;\n  byte bVar7;\n  char *pcVar8;\n  undefined **ppuVar9;\n  uint uVar10;\n  byte *pbVar11;\n  char *local_60;\n  undefined8 local_58 [2];\n  long local_48;\n  byte local_40;\n  \n  __ptr = (undefined8 *)xmalloc(0x48);\n  if (DAT_001e4650 == 0) {\n    bVar7 = 0;\n    pbVar11 = (byte *)0x0;\n  }\n  else {\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }\n  FUN_00114ae0(0,local_58,1);\n  if (local_40 < 7) {\n    uVar5 = 1L << (local_40 & 0x3f);\n    if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }\n    pcVar8 = "missing or bad offset expression";\n  }\n  else {\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }\nLAB_001214f0:\n  uVar6 = dcgettext(0,pcVar8,5);\n  FUN_0011da70(uVar6);\n  FUN_0011fd80();\n  free(__ptr);\njoined_r0x0012147f:\n  if (DAT_001e4650 == 0) {\n    return;\n  }\n  FUN_0011f810(pbVar11,(int)(char)bVar7);\n  return;\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "byte *pbVar2;" type_identifier (pointer_declarator "*pbVar2" * identifier) ;) (declaration "byte bVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "undefined8 *__ptr;" type_identifier (pointer_declarator "*__ptr" * identifier) ;) (declaration "ulong uVar5;" type_identifier identifier ;) (declaration "undefined8 uVar6;" type_identifier identifier ;) (declaration "byte bVar7;" type_identifier identifier ;) (declaration "char *pcVar8;" primitive_type (pointer_declarator "*pcVar8" * identifier) ;) (declaration "undefined **ppuVar9;" type_identifier (pointer_declarator "**ppuVar9" * (pointer_declarator "*ppuVar9" * identifier)) ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "byte *pbVar11;" type_identifier (pointer_declarator "*pbVar11" * identifier) ;) (declaration "char *local_60;" primitive_type (pointer_declarator "*local_60" * identifier) ;) (declaration "undefined8 local_58 [2];" type_identifier (array_declarator "local_58 [2]" identifier [ number_literal ]) ;) (declaration "long local_48;" (sized_type_specifier "long" long) identifier ;) (declaration "byte local_40;" type_identifier identifier ;) (expression_statement "__ptr = (undefined8 *)xmalloc(0x48);" (assignment_expression "__ptr = (undefined8 *)xmalloc(0x48)" identifier = (cast_expression "(undefined8 *)xmalloc(0x48)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(0x48)" identifier (argument_list "(0x48)" ( number_literal ))))) ;) (if_statement "if (DAT_001e4650 == 0) {\n    bVar7 = 0;\n    pbVar11 = (byte *)0x0;\n  }\n  else {\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }" if (parenthesized_expression "(DAT_001e4650 == 0)" ( (binary_expression "DAT_001e4650 == 0" identifier == number_literal) )) (compound_statement "{\n    bVar7 = 0;\n    pbVar11 = (byte *)0x0;\n  }" { (expression_statement "bVar7 = 0;" (assignment_expression "bVar7 = 0" identifier = number_literal) ;) (expression_statement "pbVar11 = (byte *)0x0;" (assignment_expression "pbVar11 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }" else (compound_statement "{\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }" { (expression_statement "bVar7 = *DAT_001e4780;" (assignment_expression "bVar7 = *DAT_001e4780" identifier = (pointer_expression "*DAT_001e4780" * identifier)) ;) (expression_statement "cVar1 = (&DAT_001da4e0)[bVar7];" (assignment_expression "cVar1 = (&DAT_001da4e0)[bVar7]" identifier = (subscript_expression "(&DAT_001da4e0)[bVar7]" (parenthesized_expression "(&DAT_001da4e0)" ( (pointer_expression "&DAT_001da4e0" & identifier) )) [ identifier ])) ;) (expression_statement "pbVar11 = DAT_001e4780;" (assignment_expression "pbVar11 = DAT_001e4780" identifier = identifier) ;) (while_statement "while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }" while (parenthesized_expression "(cVar1 == '\0')" ( (binary_expression "cVar1 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }" { (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) (expression_statement "bVar7 = *pbVar11;" (assignment_expression "bVar7 = *pbVar11" identifier = (pointer_expression "*pbVar11" * identifier)) ;) (expression_statement "cVar1 = (&DAT_001da4e0)[bVar7];" (assignment_expression "cVar1 = (&DAT_001da4e0)[bVar7]" identifier = (subscript_expression "(&DAT_001da4e0)[bVar7]" (parenthesized_expression "(&DAT_001da4e0)" ( (pointer_expression "&DAT_001da4e0" & identifier) )) [ identifier ])) ;) })) (expression_statement "*pbVar11 = 0;" (assignment_expression "*pbVar11 = 0" (pointer_expression "*pbVar11" * identifier) = number_literal) ;) }))) (expression_statement "FUN_00114ae0(0,local_58,1);" (call_expression "FUN_00114ae0(0,local_58,1)" identifier (argument_list "(0,local_58,1)" ( number_literal , identifier , number_literal ))) ;) (if_statement "if (local_40 < 7) {\n    uVar5 = 1L << (local_40 & 0x3f);\n    if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }\n    pcVar8 = "missing or bad offset expression";\n  }\n  else {\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }" if (parenthesized_expression "(local_40 < 7)" ( (binary_expression "local_40 < 7" identifier < number_literal) )) (compound_statement "{\n    uVar5 = 1L << (local_40 & 0x3f);\n    if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }\n    pcVar8 = "missing or bad offset expression";\n  }" { (expression_statement "uVar5 = 1L << (local_40 & 0x3f);" (assignment_expression "uVar5 = 1L << (local_40 & 0x3f)" identifier = (binary_expression "1L << (local_40 & 0x3f)" number_literal << (parenthesized_expression "(local_40 & 0x3f)" ( (binary_expression "local_40 & 0x3f" identifier & number_literal) )))) ;) (if_statement "if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }" if (parenthesized_expression "((uVar5 & 99) == 0)" ( (binary_expression "(uVar5 & 99) == 0" (parenthesized_expression "(uVar5 & 99)" ( (binary_expression "uVar5 & 99" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }" { (if_statement "if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }" if (parenthesized_expression "((uVar5 & 8) == 0)" ( (binary_expression "(uVar5 & 8) == 0" (parenthesized_expression "(uVar5 & 8)" ( (binary_expression "uVar5 & 8" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }" { (if_statement "if ((uVar5 & 4) == 0) goto LAB_001212eb;" if (parenthesized_expression "((uVar5 & 4) == 0)" ( (binary_expression "(uVar5 & 4) == 0" (parenthesized_expression "(uVar5 & 4)" ( (binary_expression "uVar5 & 4" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_001212eb;" goto statement_identifier ;)) (expression_statement "local_58[0] = FUN_001279c0(DAT_001e44a8);" (assignment_expression "local_58[0] = FUN_001279c0(DAT_001e44a8)" (subscript_expression "local_58[0]" identifier [ number_literal ]) = (call_expression "FUN_001279c0(DAT_001e44a8)" identifier (argument_list "(DAT_001e44a8)" ( identifier )))) ;) (expression_statement "local_40 = 3;" (assignment_expression "local_40 = 3" identifier = number_literal) ;) })) (if_statement "if (local_48 != 0) goto LAB_001212eb;" if (parenthesized_expression "(local_48 != 0)" ( (binary_expression "local_48 != 0" identifier != number_literal) )) (goto_statement "goto LAB_001212eb;" goto statement_identifier ;)) (expression_statement "__ptr[1] = local_58[0];" (assignment_expression "__ptr[1] = local_58[0]" (subscript_expression "__ptr[1]" identifier [ number_literal ]) = (subscript_expression "local_58[0]" identifier [ number_literal ])) ;) (goto_statement "goto LAB_001212f7;" goto statement_identifier ;) })) (expression_statement "pcVar8 = "missing or bad offset expression";" (assignment_expression "pcVar8 = "missing or bad offset expression"" identifier = (string_literal ""missing or bad offset expression"" " string_content ")) ;) }) (else_clause "else {\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }" else (compound_statement "{\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }" { (labeled_statement "LAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);" statement_identifier : (expression_statement "uVar6 = FUN_00113ee0(local_58);" (assignment_expression "uVar6 = FUN_00113ee0(local_58)" identifier = (call_expression "FUN_00113ee0(local_58)" identifier (argument_list "(local_58)" ( identifier )))) ;)) (expression_statement "__ptr[1] = uVar6;" (assignment_expression "__ptr[1] = uVar6" (subscript_expression "__ptr[1]" identifier [ number_literal ]) = identifier) ;) (labeled_statement "LAB_001212f7:\n    bVar3 = *DAT_001e4780;" statement_identifier : (expression_statement "bVar3 = *DAT_001e4780;" (assignment_expression "bVar3 = *DAT_001e4780" identifier = (pointer_expression "*DAT_001e4780" * identifier)) ;)) (if_statement "if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }" if (parenthesized_expression "(bVar3 == 0x20)" ( (binary_expression "bVar3 == 0x20" identifier == number_literal) )) (compound_statement "{\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }" { (expression_statement "bVar3 = DAT_001e4780[1];" (assignment_expression "bVar3 = DAT_001e4780[1]" identifier = (subscript_expression "DAT_001e4780[1]" identifier [ number_literal ])) ;) (expression_statement "DAT_001e4780 = DAT_001e4780 + 1;" (assignment_expression "DAT_001e4780 = DAT_001e4780 + 1" identifier = (binary_expression "DAT_001e4780 + 1" identifier + number_literal)) ;) })) (if_statement "if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }" if (parenthesized_expression "(bVar3 == 0x2c)" ( (binary_expression "bVar3 == 0x2c" identifier == number_literal) )) (compound_statement "{\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }" { (expression_statement "pbVar2 = DAT_001e4780 + 1;" (assignment_expression "pbVar2 = DAT_001e4780 + 1" identifier = (binary_expression "DAT_001e4780 + 1" identifier + number_literal)) ;) (if_statement "if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }" if (parenthesized_expression "(DAT_001e4780[1] == 0x20)" ( (binary_expression "DAT_001e4780[1] == 0x20" (subscript_expression "DAT_001e4780[1]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n        pbVar2 = DAT_001e4780 + 2;\n      }" { (expression_statement "pbVar2 = DAT_001e4780 + 2;" (assignment_expression "pbVar2 = DAT_001e4780 + 2" identifier = (binary_expression "DAT_001e4780 + 2" identifier + number_literal)) ;) })) (expression_statement "DAT_001e4780 = pbVar2;" (assignment_expression "DAT_001e4780 = pbVar2" identifier = identifier) ;) (expression_statement "bVar3 = FUN_001149a0(&local_60);" (assignment_expression "bVar3 = FUN_001149a0(&local_60)" identifier = (call_expression "FUN_001149a0(&local_60)" identifier (argument_list "(&local_60)" ( (pointer_expression "&local_60" & identifier) )))) ;) (expression_statement "iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);" (assignment_expression "iVar4 = strncasecmp(local_60,"BFD_RELOC_",10)" identifier = (call_expression "strncasecmp(local_60,"BFD_RELOC_",10)" identifier (argument_list "(local_60,"BFD_RELOC_",10)" ( identifier , (string_literal ""BFD_RELOC_"" " string_content ") , number_literal )))) ;) (if_statement "if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }" { (expression_statement "uVar10 = 0;" (assignment_expression "uVar10 = 0" identifier = number_literal) ;) (expression_statement "__ptr[2] = 0;" (assignment_expression "__ptr[2] = 0" (subscript_expression "__ptr[2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "ppuVar9 = &PTR_DAT_001602c0;" (assignment_expression "ppuVar9 = &PTR_DAT_001602c0" identifier = (pointer_expression "&PTR_DAT_001602c0" & identifier)) ;) (expression_statement "iVar4 = strcasecmp(local_60 + 10,"NONE");" (assignment_expression "iVar4 = strcasecmp(local_60 + 10,"NONE")" identifier = (call_expression "strcasecmp(local_60 + 10,"NONE")" identifier (argument_list "(local_60 + 10,"NONE")" ( (binary_expression "local_60 + 10" identifier + number_literal) , (string_literal ""NONE"" " string_content ") )))) ;) (while_statement "while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }" while (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }" { (expression_statement "uVar10 = uVar10 + 1;" (assignment_expression "uVar10 = uVar10 + 1" identifier = (binary_expression "uVar10 + 1" identifier + number_literal)) ;) (expression_statement "ppuVar9 = ppuVar9 + 2;" (assignment_expression "ppuVar9 = ppuVar9 + 2" identifier = (binary_expression "ppuVar9 + 2" identifier + number_literal)) ;) (if_statement "if (uVar10 == 5) goto LAB_001213d8;" if (parenthesized_expression "(uVar10 == 5)" ( (binary_expression "uVar10 == 5" identifier == number_literal) )) (goto_statement "goto LAB_001213d8;" goto statement_identifier ;)) (expression_statement "iVar4 = strcasecmp(local_60 + 10,*ppuVar9);" (assignment_expression "iVar4 = strcasecmp(local_60 + 10,*ppuVar9)" identifier = (call_expression "strcasecmp(local_60 + 10,*ppuVar9)" identifier (argument_list "(local_60 + 10,*ppuVar9)" ( (binary_expression "local_60 + 10" identifier + number_literal) , (pointer_expression "*ppuVar9" * identifier) )))) ;) })) (expression_statement "uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);" (assignment_expression "uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4])" identifier = (call_expression "bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4])" identifier (argument_list "(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4])" ( identifier , (subscript_expression "(&DAT_001602c8)[(ulong)uVar10 * 4]" (parenthesized_expression "(&DAT_001602c8)" ( (pointer_expression "&DAT_001602c8" & identifier) )) [ (binary_expression "(ulong)uVar10 * 4" (cast_expression "(ulong)uVar10" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal) ]) )))) ;) (expression_statement "__ptr[2] = uVar6;" (assignment_expression "__ptr[2] = uVar6" (subscript_expression "__ptr[2]" identifier [ number_literal ]) = identifier) ;) }) (else_clause "else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }" else (compound_statement "{\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }" { (expression_statement "uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);" (assignment_expression "uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60)" identifier = (call_expression "bfd_reloc_name_lookup(DAT_001e4750,local_60)" identifier (argument_list "(DAT_001e4750,local_60)" ( identifier , identifier )))) ;) (expression_statement "__ptr[2] = uVar6;" (assignment_expression "__ptr[2] = uVar6" (subscript_expression "__ptr[2]" identifier [ number_literal ]) = identifier) ;) }))) (labeled_statement "LAB_001213d8:\n      pcVar8 = "unrecognized reloc type";" statement_identifier : (expression_statement "pcVar8 = "unrecognized reloc type";" (assignment_expression "pcVar8 = "unrecognized reloc type"" identifier = (string_literal ""unrecognized reloc type"" " string_content ")) ;)) (expression_statement "*DAT_001e4780 = bVar3;" (assignment_expression "*DAT_001e4780 = bVar3" (pointer_expression "*DAT_001e4780" * identifier) = identifier) ;) (if_statement "if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }" if (parenthesized_expression "(__ptr[2] != 0)" ( (binary_expression "__ptr[2] != 0" (subscript_expression "__ptr[2]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }" { (expression_statement "local_40 = 1;" (assignment_expression "local_40 = 1" identifier = number_literal) ;) (expression_statement "bVar3 = *DAT_001e4780;" (assignment_expression "bVar3 = *DAT_001e4780" identifier = (pointer_expression "*DAT_001e4780" * identifier)) ;) (if_statement "if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }" if (parenthesized_expression "(bVar3 == 0x22)" ( (binary_expression "bVar3 == 0x22" identifier == number_literal) )) (compound_statement "{\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }" { (expression_statement "bVar3 = DAT_001e4780[1];" (assignment_expression "bVar3 = DAT_001e4780[1]" identifier = (subscript_expression "DAT_001e4780[1]" identifier [ number_literal ])) ;) (expression_statement "DAT_001e4780 = DAT_001e4780 + 1;" (assignment_expression "DAT_001e4780 = DAT_001e4780 + 1" identifier = (binary_expression "DAT_001e4780 + 1" identifier + number_literal)) ;) })) (if_statement "if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }" if (parenthesized_expression "(bVar3 == 0x20)" ( (binary_expression "bVar3 == 0x20" identifier == number_literal) )) (compound_statement "{\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }" { (expression_statement "bVar3 = DAT_001e4780[1];" (assignment_expression "bVar3 = DAT_001e4780[1]" identifier = (subscript_expression "DAT_001e4780[1]" identifier [ number_literal ])) ;) (expression_statement "DAT_001e4780 = DAT_001e4780 + 1;" (assignment_expression "DAT_001e4780 = DAT_001e4780 + 1" identifier = (binary_expression "DAT_001e4780 + 1" identifier + number_literal)) ;) })) (if_statement "if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }" if (parenthesized_expression "(bVar3 == 0x2c)" ( (binary_expression "bVar3 == 0x2c" identifier == number_literal) )) (compound_statement "{\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }" { (expression_statement "DAT_001e4780 = DAT_001e4780 + 1;" (assignment_expression "DAT_001e4780 = DAT_001e4780 + 1" identifier = (binary_expression "DAT_001e4780 + 1" identifier + number_literal)) ;) (expression_statement "FUN_00114ae0(0,local_58,1);" (call_expression "FUN_00114ae0(0,local_58,1)" identifier (argument_list "(0,local_58,1)" ( number_literal , identifier , number_literal ))) ;) (switch_statement "switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }" switch (parenthesized_expression "(local_40)" ( identifier )) (compound_statement "{\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }" { (case_statement "case 0:" case number_literal :) (case_statement "case 5:" case number_literal :) (case_statement "case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;" case number_literal : (expression_statement "pcVar8 = "bad reloc expression";" (assignment_expression "pcVar8 = "bad reloc expression"" identifier = (string_literal ""bad reloc expression"" " string_content ")) ;) (goto_statement "goto LAB_001214f0;" goto statement_identifier ;)) (case_statement "case 1:\n            goto switchD_00121578_caseD_1;" case number_literal : (goto_statement "goto switchD_00121578_caseD_1;" goto statement_identifier ;)) (case_statement "case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;" case number_literal : (expression_statement "__ptr[3] = 0;" (assignment_expression "__ptr[3] = 0" (subscript_expression "__ptr[3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "__ptr[4] = local_48;" (assignment_expression "__ptr[4] = local_48" (subscript_expression "__ptr[4]" identifier [ number_literal ]) = identifier) ;) (break_statement "break;" break ;)) (case_statement "case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;" case number_literal : (expression_statement "__ptr[3] = local_58[0];" (assignment_expression "__ptr[3] = local_58[0]" (subscript_expression "__ptr[3]" identifier [ number_literal ]) = (subscript_expression "local_58[0]" identifier [ number_literal ])) ;) (expression_statement "__ptr[4] = local_48;" (assignment_expression "__ptr[4] = local_48" (subscript_expression "__ptr[4]" identifier [ number_literal ]) = identifier) ;) (break_statement "break;" break ;)) (case_statement "default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;" default : (expression_statement "uVar6 = FUN_00113ee0(local_58);" (assignment_expression "uVar6 = FUN_00113ee0(local_58)" identifier = (call_expression "FUN_00113ee0(local_58)" identifier (argument_list "(local_58)" ( identifier )))) ;) (expression_statement "__ptr[4] = 0;" (assignment_expression "__ptr[4] = 0" (subscript_expression "__ptr[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "__ptr[3] = uVar6;" (assignment_expression "__ptr[3] = uVar6" (subscript_expression "__ptr[3]" identifier [ number_literal ]) = identifier) ;)) })) }) (else_clause "else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }" else (compound_statement "{\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }" { (labeled_statement "switchD_00121578_caseD_1:\n          __ptr[3] = 0;" statement_identifier : (expression_statement "__ptr[3] = 0;" (assignment_expression "__ptr[3] = 0" (subscript_expression "__ptr[3]" identifier [ number_literal ]) = number_literal) ;)) (expression_statement "__ptr[4] = 0;" (assignment_expression "__ptr[4] = 0" (subscript_expression "__ptr[4]" identifier [ number_literal ]) = number_literal) ;) }))) (expression_statement "uVar6 = FUN_00118700(__ptr + 8);" (assignment_expression "uVar6 = FUN_00118700(__ptr + 8)" identifier = (call_expression "FUN_00118700(__ptr + 8)" identifier (argument_list "(__ptr + 8)" ( (binary_expression "__ptr + 8" identifier + number_literal) )))) ;) (expression_statement "__ptr[7] = uVar6;" (assignment_expression "__ptr[7] = uVar6" (subscript_expression "__ptr[7]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*__ptr = DAT_001e4990;" (assignment_expression "*__ptr = DAT_001e4990" (pointer_expression "*__ptr" * identifier) = identifier) ;) (expression_statement "DAT_001e4990 = __ptr;" (assignment_expression "DAT_001e4990 = __ptr" identifier = identifier) ;) (expression_statement "FUN_0011ffa0();" (call_expression "FUN_0011ffa0()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto joined_r0x0012147f;" goto statement_identifier ;) })) }) (else_clause "else {\n      pcVar8 = "missing reloc type";\n    }" else (compound_statement "{\n      pcVar8 = "missing reloc type";\n    }" { (expression_statement "pcVar8 = "missing reloc type";" (assignment_expression "pcVar8 = "missing reloc type"" identifier = (string_literal ""missing reloc type"" " string_content ")) ;) }))) }))) (labeled_statement "LAB_001214f0:\n  uVar6 = dcgettext(0,pcVar8,5);" statement_identifier : (expression_statement "uVar6 = dcgettext(0,pcVar8,5);" (assignment_expression "uVar6 = dcgettext(0,pcVar8,5)" identifier = (call_expression "dcgettext(0,pcVar8,5)" identifier (argument_list "(0,pcVar8,5)" ( number_literal , identifier , number_literal )))) ;)) (expression_statement "FUN_0011da70(uVar6);" (call_expression "FUN_0011da70(uVar6)" identifier (argument_list "(uVar6)" ( identifier ))) ;) (expression_statement "FUN_0011fd80();" (call_expression "FUN_0011fd80()" identifier (argument_list "()" ( ))) ;) (expression_statement "free(__ptr);" (call_expression "free(__ptr)" identifier (argument_list "(__ptr)" ( identifier ))) ;) (labeled_statement "joined_r0x0012147f:\n  if (DAT_001e4650 == 0) {\n    return;\n  }" statement_identifier : (if_statement "if (DAT_001e4650 == 0) {\n    return;\n  }" if (parenthesized_expression "(DAT_001e4650 == 0)" ( (binary_expression "DAT_001e4650 == 0" identifier == number_literal) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) }))) (expression_statement "FUN_0011f810(pbVar11,(int)(char)bVar7);" (call_expression "FUN_0011f810(pbVar11,(int)(char)bVar7)" identifier (argument_list "(pbVar11,(int)(char)bVar7)" ( identifier , (cast_expression "(int)(char)bVar7" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar7" ( (type_descriptor "char" primitive_type) ) identifier)) ))) ;) (return_statement "return;" return ;) })))
(translation_unit "void s_reloc(int ignore)\n\n{\n  char cVar1;\n  int iVar2;\n  reloc_list *__ptr;\n  ulong uVar3;\n  symbolS *psVar4;\n  reloc_howto_type *prVar5;\n  byte bVar6;\n  char *pcVar7;\n  _bfd_rel *p_Var8;\n  uint uVar9;\n  byte *stop;\n  char *r_name;\n  expressionS exp;\n  \n  __ptr = (reloc_list *)xmalloc();\n  if (flag_mri == 0) {\n    bVar6 = 0;\n    stop = (byte *)0x0;\n  }\n  else {\n    bVar6 = *input_line_pointer;\n    cVar1 = is_end_of_line[bVar6];\n    stop = (byte *)input_line_pointer;\n    while (cVar1 == '\0') {\n      stop = stop + 1;\n      bVar6 = *stop;\n      cVar1 = is_end_of_line[bVar6];\n    }\n    *stop = 0;\n  }\n  expr(0,&exp,expr_normal);\n  if ((byte)exp._24_1_ < 7) {\n    uVar3 = 1L << (exp._24_1_ & 0x3f);\n    if ((uVar3 & 99) == 0) {\n      if ((uVar3 & 8) == 0) {\n        if ((uVar3 & 4) == 0) goto LAB_001212eb;\n        exp.X_add_symbol = section_symbol(now_seg);\n        exp._24_1_ = 3;\n      }\n      if (exp.X_add_number != 0) goto LAB_001212eb;\n      (__ptr->u).a.offset_sym = exp.X_add_symbol;\n      goto LAB_001212f7;\n    }\n    pcVar7 = "missing or bad offset expression";\n  }\n  else {\nLAB_001212eb:\n    psVar4 = make_expr_symbol(&exp);\n    (__ptr->u).a.offset_sym = psVar4;\nLAB_001212f7:\n    cVar1 = *input_line_pointer;\n    if (cVar1 == ' ') {\n      cVar1 = input_line_pointer[1];\n      input_line_pointer = input_line_pointer + 1;\n    }\n    if (cVar1 == ',') {\n      pcVar7 = input_line_pointer + 1;\n      if (input_line_pointer[1] == ' ') {\n        pcVar7 = input_line_pointer + 2;\n      }\n      input_line_pointer = pcVar7;\n      cVar1 = get_symbol_name(&r_name);\n      iVar2 = strncasecmp(r_name,"BFD_RELOC_",10);\n      if (iVar2 == 0) {\n        uVar9 = 0;\n        (__ptr->u).a.howto = (reloc_howto_type *)0x0;\n        p_Var8 = s_reloc::bfd_relocs;\n        iVar2 = strcasecmp(r_name + 10,"NONE");\n        while (iVar2 != 0) {\n          uVar9 = uVar9 + 1;\n          p_Var8 = p_Var8 + 1;\n          if (uVar9 == 5) goto LAB_001213d8;\n          iVar2 = strcasecmp(r_name + 10,p_Var8->name);\n        }\n        prVar5 = (reloc_howto_type *)\n                 bfd_reloc_type_lookup(stdoutput,s_reloc::bfd_relocs[uVar9].code);\n        (__ptr->u).a.howto = prVar5;\n      }\n      else {\n        prVar5 = (reloc_howto_type *)bfd_reloc_name_lookup(stdoutput,r_name);\n        (__ptr->u).a.howto = prVar5;\n      }\nLAB_001213d8:\n      pcVar7 = "unrecognized reloc type";\n      *input_line_pointer = cVar1;\n      if ((__ptr->u).a.howto != (reloc_howto_type *)0x0) {\n        exp._24_1_ = 1;\n        cVar1 = *input_line_pointer;\n        if (cVar1 == '\"') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ' ') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ',') {\n          input_line_pointer = input_line_pointer + 1;\n          expr(0,&exp,expr_normal);\n          switch(exp._24_1_) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar7 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            (__ptr->u).a.sym = (symbolS *)0x0;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          case 3:\n            (__ptr->u).a.sym = exp.X_add_symbol;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          default:\n            psVar4 = make_expr_symbol(&exp);\n            (__ptr->u).a.addend = 0;\n            (__ptr->u).a.sym = psVar4;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          (__ptr->u).a.sym = (symbolS *)0x0;\n          (__ptr->u).a.addend = 0;\n        }\n        pcVar7 = as_where(&__ptr->line);\n        __ptr->file = pcVar7;\n        __ptr->next = reloc_list;\n        reloc_list = __ptr;\n        demand_empty_rest_of_line();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar7 = "missing reloc type";\n    }\n  }\nLAB_001214f0:\n  pcVar7 = (char *)dcgettext(0,pcVar7,5);\n  as_bad(pcVar7);\n  ignore_rest_of_line();\n  free(__ptr);\njoined_r0x0012147f:\n  if (flag_mri == 0) {\n    return;\n  }\n  mri_comment_end((char *)stop,(int)(char)bVar6);\n  return;\n}\n\n" (function_definition "void s_reloc(int ignore)\n\n{\n  char cVar1;\n  int iVar2;\n  reloc_list *__ptr;\n  ulong uVar3;\n  symbolS *psVar4;\n  reloc_howto_type *prVar5;\n  byte bVar6;\n  char *pcVar7;\n  _bfd_rel *p_Var8;\n  uint uVar9;\n  byte *stop;\n  char *r_name;\n  expressionS exp;\n  \n  __ptr = (reloc_list *)xmalloc();\n  if (flag_mri == 0) {\n    bVar6 = 0;\n    stop = (byte *)0x0;\n  }\n  else {\n    bVar6 = *input_line_pointer;\n    cVar1 = is_end_of_line[bVar6];\n    stop = (byte *)input_line_pointer;\n    while (cVar1 == '\0') {\n      stop = stop + 1;\n      bVar6 = *stop;\n      cVar1 = is_end_of_line[bVar6];\n    }\n    *stop = 0;\n  }\n  expr(0,&exp,expr_normal);\n  if ((byte)exp._24_1_ < 7) {\n    uVar3 = 1L << (exp._24_1_ & 0x3f);\n    if ((uVar3 & 99) == 0) {\n      if ((uVar3 & 8) == 0) {\n        if ((uVar3 & 4) == 0) goto LAB_001212eb;\n        exp.X_add_symbol = section_symbol(now_seg);\n        exp._24_1_ = 3;\n      }\n      if (exp.X_add_number != 0) goto LAB_001212eb;\n      (__ptr->u).a.offset_sym = exp.X_add_symbol;\n      goto LAB_001212f7;\n    }\n    pcVar7 = "missing or bad offset expression";\n  }\n  else {\nLAB_001212eb:\n    psVar4 = make_expr_symbol(&exp);\n    (__ptr->u).a.offset_sym = psVar4;\nLAB_001212f7:\n    cVar1 = *input_line_pointer;\n    if (cVar1 == ' ') {\n      cVar1 = input_line_pointer[1];\n      input_line_pointer = input_line_pointer + 1;\n    }\n    if (cVar1 == ',') {\n      pcVar7 = input_line_pointer + 1;\n      if (input_line_pointer[1] == ' ') {\n        pcVar7 = input_line_pointer + 2;\n      }\n      input_line_pointer = pcVar7;\n      cVar1 = get_symbol_name(&r_name);\n      iVar2 = strncasecmp(r_name,"BFD_RELOC_",10);\n      if (iVar2 == 0) {\n        uVar9 = 0;\n        (__ptr->u).a.howto = (reloc_howto_type *)0x0;\n        p_Var8 = s_reloc::bfd_relocs;\n        iVar2 = strcasecmp(r_name + 10,"NONE");\n        while (iVar2 != 0) {\n          uVar9 = uVar9 + 1;\n          p_Var8 = p_Var8 + 1;\n          if (uVar9 == 5) goto LAB_001213d8;\n          iVar2 = strcasecmp(r_name + 10,p_Var8->name);\n        }\n        prVar5 = (reloc_howto_type *)\n                 bfd_reloc_type_lookup(stdoutput,s_reloc::bfd_relocs[uVar9].code);\n        (__ptr->u).a.howto = prVar5;\n      }\n      else {\n        prVar5 = (reloc_howto_type *)bfd_reloc_name_lookup(stdoutput,r_name);\n        (__ptr->u).a.howto = prVar5;\n      }\nLAB_001213d8:\n      pcVar7 = "unrecognized reloc type";\n      *input_line_pointer = cVar1;\n      if ((__ptr->u).a.howto != (reloc_howto_type *)0x0) {\n        exp._24_1_ = 1;\n        cVar1 = *input_line_pointer;\n        if (cVar1 == '\"') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ' ') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ',') {\n          input_line_pointer = input_line_pointer + 1;\n          expr(0,&exp,expr_normal);\n          switch(exp._24_1_) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar7 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            (__ptr->u).a.sym = (symbolS *)0x0;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          case 3:\n            (__ptr->u).a.sym = exp.X_add_symbol;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          default:\n            psVar4 = make_expr_symbol(&exp);\n            (__ptr->u).a.addend = 0;\n            (__ptr->u).a.sym = psVar4;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          (__ptr->u).a.sym = (symbolS *)0x0;\n          (__ptr->u).a.addend = 0;\n        }\n        pcVar7 = as_where(&__ptr->line);\n        __ptr->file = pcVar7;\n        __ptr->next = reloc_list;\n        reloc_list = __ptr;\n        demand_empty_rest_of_line();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar7 = "missing reloc type";\n    }\n  }\nLAB_001214f0:\n  pcVar7 = (char *)dcgettext(0,pcVar7,5);\n  as_bad(pcVar7);\n  ignore_rest_of_line();\n  free(__ptr);\njoined_r0x0012147f:\n  if (flag_mri == 0) {\n    return;\n  }\n  mri_comment_end((char *)stop,(int)(char)bVar6);\n  return;\n}" primitive_type (function_declarator "s_reloc(int ignore)" identifier (parameter_list "(int ignore)" ( (parameter_declaration "int ignore" primitive_type identifier) ))) (compound_statement "{\n  char cVar1;\n  int iVar2;\n  reloc_list *__ptr;\n  ulong uVar3;\n  symbolS *psVar4;\n  reloc_howto_type *prVar5;\n  byte bVar6;\n  char *pcVar7;\n  _bfd_rel *p_Var8;\n  uint uVar9;\n  byte *stop;\n  char *r_name;\n  expressionS exp;\n  \n  __ptr = (reloc_list *)xmalloc();\n  if (flag_mri == 0) {\n    bVar6 = 0;\n    stop = (byte *)0x0;\n  }\n  else {\n    bVar6 = *input_line_pointer;\n    cVar1 = is_end_of_line[bVar6];\n    stop = (byte *)input_line_pointer;\n    while (cVar1 == '\0') {\n      stop = stop + 1;\n      bVar6 = *stop;\n      cVar1 = is_end_of_line[bVar6];\n    }\n    *stop = 0;\n  }\n  expr(0,&exp,expr_normal);\n  if ((byte)exp._24_1_ < 7) {\n    uVar3 = 1L << (exp._24_1_ & 0x3f);\n    if ((uVar3 & 99) == 0) {\n      if ((uVar3 & 8) == 0) {\n        if ((uVar3 & 4) == 0) goto LAB_001212eb;\n        exp.X_add_symbol = section_symbol(now_seg);\n        exp._24_1_ = 3;\n      }\n      if (exp.X_add_number != 0) goto LAB_001212eb;\n      (__ptr->u).a.offset_sym = exp.X_add_symbol;\n      goto LAB_001212f7;\n    }\n    pcVar7 = "missing or bad offset expression";\n  }\n  else {\nLAB_001212eb:\n    psVar4 = make_expr_symbol(&exp);\n    (__ptr->u).a.offset_sym = psVar4;\nLAB_001212f7:\n    cVar1 = *input_line_pointer;\n    if (cVar1 == ' ') {\n      cVar1 = input_line_pointer[1];\n      input_line_pointer = input_line_pointer + 1;\n    }\n    if (cVar1 == ',') {\n      pcVar7 = input_line_pointer + 1;\n      if (input_line_pointer[1] == ' ') {\n        pcVar7 = input_line_pointer + 2;\n      }\n      input_line_pointer = pcVar7;\n      cVar1 = get_symbol_name(&r_name);\n      iVar2 = strncasecmp(r_name,"BFD_RELOC_",10);\n      if (iVar2 == 0) {\n        uVar9 = 0;\n        (__ptr->u).a.howto = (reloc_howto_type *)0x0;\n        p_Var8 = s_reloc::bfd_relocs;\n        iVar2 = strcasecmp(r_name + 10,"NONE");\n        while (iVar2 != 0) {\n          uVar9 = uVar9 + 1;\n          p_Var8 = p_Var8 + 1;\n          if (uVar9 == 5) goto LAB_001213d8;\n          iVar2 = strcasecmp(r_name + 10,p_Var8->name);\n        }\n        prVar5 = (reloc_howto_type *)\n                 bfd_reloc_type_lookup(stdoutput,s_reloc::bfd_relocs[uVar9].code);\n        (__ptr->u).a.howto = prVar5;\n      }\n      else {\n        prVar5 = (reloc_howto_type *)bfd_reloc_name_lookup(stdoutput,r_name);\n        (__ptr->u).a.howto = prVar5;\n      }\nLAB_001213d8:\n      pcVar7 = "unrecognized reloc type";\n      *input_line_pointer = cVar1;\n      if ((__ptr->u).a.howto != (reloc_howto_type *)0x0) {\n        exp._24_1_ = 1;\n        cVar1 = *input_line_pointer;\n        if (cVar1 == '\"') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ' ') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ',') {\n          input_line_pointer = input_line_pointer + 1;\n          expr(0,&exp,expr_normal);\n          switch(exp._24_1_) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar7 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            (__ptr->u).a.sym = (symbolS *)0x0;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          case 3:\n            (__ptr->u).a.sym = exp.X_add_symbol;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          default:\n            psVar4 = make_expr_symbol(&exp);\n            (__ptr->u).a.addend = 0;\n            (__ptr->u).a.sym = psVar4;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          (__ptr->u).a.sym = (symbolS *)0x0;\n          (__ptr->u).a.addend = 0;\n        }\n        pcVar7 = as_where(&__ptr->line);\n        __ptr->file = pcVar7;\n        __ptr->next = reloc_list;\n        reloc_list = __ptr;\n        demand_empty_rest_of_line();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar7 = "missing reloc type";\n    }\n  }\nLAB_001214f0:\n  pcVar7 = (char *)dcgettext(0,pcVar7,5);\n  as_bad(pcVar7);\n  ignore_rest_of_line();\n  free(__ptr);\njoined_r0x0012147f:\n  if (flag_mri == 0) {\n    return;\n  }\n  mri_comment_end((char *)stop,(int)(char)bVar6);\n  return;\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "reloc_list *__ptr;" type_identifier (pointer_declarator "*__ptr" * identifier) ;) (declaration "ulong uVar3;" type_identifier identifier ;) (declaration "symbolS *psVar4;" type_identifier (pointer_declarator "*psVar4" * identifier) ;) (declaration "reloc_howto_type *prVar5;" type_identifier (pointer_declarator "*prVar5" * identifier) ;) (declaration "byte bVar6;" type_identifier identifier ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "_bfd_rel *p_Var8;" type_identifier (pointer_declarator "*p_Var8" * identifier) ;) (declaration "uint uVar9;" type_identifier identifier ;) (declaration "byte *stop;" type_identifier (pointer_declarator "*stop" * identifier) ;) (declaration "char *r_name;" primitive_type (pointer_declarator "*r_name" * identifier) ;) (declaration "expressionS exp;" type_identifier identifier ;) (expression_statement "__ptr = (reloc_list *)xmalloc();" (assignment_expression "__ptr = (reloc_list *)xmalloc()" identifier = (cast_expression "(reloc_list *)xmalloc()" ( (type_descriptor "reloc_list *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc()" identifier (argument_list "()" ( ))))) ;) (if_statement "if (flag_mri == 0) {\n    bVar6 = 0;\n    stop = (byte *)0x0;\n  }\n  else {\n    bVar6 = *input_line_pointer;\n    cVar1 = is_end_of_line[bVar6];\n    stop = (byte *)input_line_pointer;\n    while (cVar1 == '\0') {\n      stop = stop + 1;\n      bVar6 = *stop;\n      cVar1 = is_end_of_line[bVar6];\n    }\n    *stop = 0;\n  }" if (parenthesized_expression "(flag_mri == 0)" ( (binary_expression "flag_mri == 0" identifier == number_literal) )) (compound_statement "{\n    bVar6 = 0;\n    stop = (byte *)0x0;\n  }" { (expression_statement "bVar6 = 0;" (assignment_expression "bVar6 = 0" identifier = number_literal) ;) (expression_statement "stop = (byte *)0x0;" (assignment_expression "stop = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n    bVar6 = *input_line_pointer;\n    cVar1 = is_end_of_line[bVar6];\n    stop = (byte *)input_line_pointer;\n    while (cVar1 == '\0') {\n      stop = stop + 1;\n      bVar6 = *stop;\n      cVar1 = is_end_of_line[bVar6];\n    }\n    *stop = 0;\n  }" else (compound_statement "{\n    bVar6 = *input_line_pointer;\n    cVar1 = is_end_of_line[bVar6];\n    stop = (byte *)input_line_pointer;\n    while (cVar1 == '\0') {\n      stop = stop + 1;\n      bVar6 = *stop;\n      cVar1 = is_end_of_line[bVar6];\n    }\n    *stop = 0;\n  }" { (expression_statement "bVar6 = *input_line_pointer;" (assignment_expression "bVar6 = *input_line_pointer" identifier = (pointer_expression "*input_line_pointer" * identifier)) ;) (expression_statement "cVar1 = is_end_of_line[bVar6];" (assignment_expression "cVar1 = is_end_of_line[bVar6]" identifier = (subscript_expression "is_end_of_line[bVar6]" identifier [ identifier ])) ;) (expression_statement "stop = (byte *)input_line_pointer;" (assignment_expression "stop = (byte *)input_line_pointer" identifier = (cast_expression "(byte *)input_line_pointer" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (while_statement "while (cVar1 == '\0') {\n      stop = stop + 1;\n      bVar6 = *stop;\n      cVar1 = is_end_of_line[bVar6];\n    }" while (parenthesized_expression "(cVar1 == '\0')" ( (binary_expression "cVar1 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      stop = stop + 1;\n      bVar6 = *stop;\n      cVar1 = is_end_of_line[bVar6];\n    }" { (expression_statement "stop = stop + 1;" (assignment_expression "stop = stop + 1" identifier = (binary_expression "stop + 1" identifier + number_literal)) ;) (expression_statement "bVar6 = *stop;" (assignment_expression "bVar6 = *stop" identifier = (pointer_expression "*stop" * identifier)) ;) (expression_statement "cVar1 = is_end_of_line[bVar6];" (assignment_expression "cVar1 = is_end_of_line[bVar6]" identifier = (subscript_expression "is_end_of_line[bVar6]" identifier [ identifier ])) ;) })) (expression_statement "*stop = 0;" (assignment_expression "*stop = 0" (pointer_expression "*stop" * identifier) = number_literal) ;) }))) (expression_statement "expr(0,&exp,expr_normal);" (call_expression "expr(0,&exp,expr_normal)" identifier (argument_list "(0,&exp,expr_normal)" ( number_literal , (pointer_expression "&exp" & identifier) , identifier ))) ;) (if_statement "if ((byte)exp._24_1_ < 7) {\n    uVar3 = 1L << (exp._24_1_ & 0x3f);\n    if ((uVar3 & 99) == 0) {\n      if ((uVar3 & 8) == 0) {\n        if ((uVar3 & 4) == 0) goto LAB_001212eb;\n        exp.X_add_symbol = section_symbol(now_seg);\n        exp._24_1_ = 3;\n      }\n      if (exp.X_add_number != 0) goto LAB_001212eb;\n      (__ptr->u).a.offset_sym = exp.X_add_symbol;\n      goto LAB_001212f7;\n    }\n    pcVar7 = "missing or bad offset expression";\n  }\n  else {\nLAB_001212eb:\n    psVar4 = make_expr_symbol(&exp);\n    (__ptr->u).a.offset_sym = psVar4;\nLAB_001212f7:\n    cVar1 = *input_line_pointer;\n    if (cVar1 == ' ') {\n      cVar1 = input_line_pointer[1];\n      input_line_pointer = input_line_pointer + 1;\n    }\n    if (cVar1 == ',') {\n      pcVar7 = input_line_pointer + 1;\n      if (input_line_pointer[1] == ' ') {\n        pcVar7 = input_line_pointer + 2;\n      }\n      input_line_pointer = pcVar7;\n      cVar1 = get_symbol_name(&r_name);\n      iVar2 = strncasecmp(r_name,"BFD_RELOC_",10);\n      if (iVar2 == 0) {\n        uVar9 = 0;\n        (__ptr->u).a.howto = (reloc_howto_type *)0x0;\n        p_Var8 = s_reloc::bfd_relocs;\n        iVar2 = strcasecmp(r_name + 10,"NONE");\n        while (iVar2 != 0) {\n          uVar9 = uVar9 + 1;\n          p_Var8 = p_Var8 + 1;\n          if (uVar9 == 5) goto LAB_001213d8;\n          iVar2 = strcasecmp(r_name + 10,p_Var8->name);\n        }\n        prVar5 = (reloc_howto_type *)\n                 bfd_reloc_type_lookup(stdoutput,s_reloc::bfd_relocs[uVar9].code);\n        (__ptr->u).a.howto = prVar5;\n      }\n      else {\n        prVar5 = (reloc_howto_type *)bfd_reloc_name_lookup(stdoutput,r_name);\n        (__ptr->u).a.howto = prVar5;\n      }\nLAB_001213d8:\n      pcVar7 = "unrecognized reloc type";\n      *input_line_pointer = cVar1;\n      if ((__ptr->u).a.howto != (reloc_howto_type *)0x0) {\n        exp._24_1_ = 1;\n        cVar1 = *input_line_pointer;\n        if (cVar1 == '\"') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ' ') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ',') {\n          input_line_pointer = input_line_pointer + 1;\n          expr(0,&exp,expr_normal);\n          switch(exp._24_1_) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar7 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            (__ptr->u).a.sym = (symbolS *)0x0;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          case 3:\n            (__ptr->u).a.sym = exp.X_add_symbol;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          default:\n            psVar4 = make_expr_symbol(&exp);\n            (__ptr->u).a.addend = 0;\n            (__ptr->u).a.sym = psVar4;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          (__ptr->u).a.sym = (symbolS *)0x0;\n          (__ptr->u).a.addend = 0;\n        }\n        pcVar7 = as_where(&__ptr->line);\n        __ptr->file = pcVar7;\n        __ptr->next = reloc_list;\n        reloc_list = __ptr;\n        demand_empty_rest_of_line();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar7 = "missing reloc type";\n    }\n  }" if (parenthesized_expression "((byte)exp._24_1_ < 7)" ( (binary_expression "(byte)exp._24_1_ < 7" (cast_expression "(byte)exp._24_1_" ( (type_descriptor "byte" type_identifier) ) (field_expression "exp._24_1_" identifier . field_identifier)) < number_literal) )) (compound_statement "{\n    uVar3 = 1L << (exp._24_1_ & 0x3f);\n    if ((uVar3 & 99) == 0) {\n      if ((uVar3 & 8) == 0) {\n        if ((uVar3 & 4) == 0) goto LAB_001212eb;\n        exp.X_add_symbol = section_symbol(now_seg);\n        exp._24_1_ = 3;\n      }\n      if (exp.X_add_number != 0) goto LAB_001212eb;\n      (__ptr->u).a.offset_sym = exp.X_add_symbol;\n      goto LAB_001212f7;\n    }\n    pcVar7 = "missing or bad offset expression";\n  }" { (expression_statement "uVar3 = 1L << (exp._24_1_ & 0x3f);" (assignment_expression "uVar3 = 1L << (exp._24_1_ & 0x3f)" identifier = (binary_expression "1L << (exp._24_1_ & 0x3f)" number_literal << (parenthesized_expression "(exp._24_1_ & 0x3f)" ( (binary_expression "exp._24_1_ & 0x3f" (field_expression "exp._24_1_" identifier . field_identifier) & number_literal) )))) ;) (if_statement "if ((uVar3 & 99) == 0) {\n      if ((uVar3 & 8) == 0) {\n        if ((uVar3 & 4) == 0) goto LAB_001212eb;\n        exp.X_add_symbol = section_symbol(now_seg);\n        exp._24_1_ = 3;\n      }\n      if (exp.X_add_number != 0) goto LAB_001212eb;\n      (__ptr->u).a.offset_sym = exp.X_add_symbol;\n      goto LAB_001212f7;\n    }" if (parenthesized_expression "((uVar3 & 99) == 0)" ( (binary_expression "(uVar3 & 99) == 0" (parenthesized_expression "(uVar3 & 99)" ( (binary_expression "uVar3 & 99" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      if ((uVar3 & 8) == 0) {\n        if ((uVar3 & 4) == 0) goto LAB_001212eb;\n        exp.X_add_symbol = section_symbol(now_seg);\n        exp._24_1_ = 3;\n      }\n      if (exp.X_add_number != 0) goto LAB_001212eb;\n      (__ptr->u).a.offset_sym = exp.X_add_symbol;\n      goto LAB_001212f7;\n    }" { (if_statement "if ((uVar3 & 8) == 0) {\n        if ((uVar3 & 4) == 0) goto LAB_001212eb;\n        exp.X_add_symbol = section_symbol(now_seg);\n        exp._24_1_ = 3;\n      }" if (parenthesized_expression "((uVar3 & 8) == 0)" ( (binary_expression "(uVar3 & 8) == 0" (parenthesized_expression "(uVar3 & 8)" ( (binary_expression "uVar3 & 8" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n        if ((uVar3 & 4) == 0) goto LAB_001212eb;\n        exp.X_add_symbol = section_symbol(now_seg);\n        exp._24_1_ = 3;\n      }" { (if_statement "if ((uVar3 & 4) == 0) goto LAB_001212eb;" if (parenthesized_expression "((uVar3 & 4) == 0)" ( (binary_expression "(uVar3 & 4) == 0" (parenthesized_expression "(uVar3 & 4)" ( (binary_expression "uVar3 & 4" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_001212eb;" goto statement_identifier ;)) (expression_statement "exp.X_add_symbol = section_symbol(now_seg);" (assignment_expression "exp.X_add_symbol = section_symbol(now_seg)" (field_expression "exp.X_add_symbol" identifier . field_identifier) = (call_expression "section_symbol(now_seg)" identifier (argument_list "(now_seg)" ( identifier )))) ;) (expression_statement "exp._24_1_ = 3;" (assignment_expression "exp._24_1_ = 3" (field_expression "exp._24_1_" identifier . field_identifier) = number_literal) ;) })) (if_statement "if (exp.X_add_number != 0) goto LAB_001212eb;" if (parenthesized_expression "(exp.X_add_number != 0)" ( (binary_expression "exp.X_add_number != 0" (field_expression "exp.X_add_number" identifier . field_identifier) != number_literal) )) (goto_statement "goto LAB_001212eb;" goto statement_identifier ;)) (expression_statement "(__ptr->u).a.offset_sym = exp.X_add_symbol;" (assignment_expression "(__ptr->u).a.offset_sym = exp.X_add_symbol" (field_expression "(__ptr->u).a.offset_sym" (field_expression "(__ptr->u).a" (parenthesized_expression "(__ptr->u)" ( (field_expression "__ptr->u" identifier -> field_identifier) )) . field_identifier) . field_identifier) = (field_expression "exp.X_add_symbol" identifier . field_identifier)) ;) (goto_statement "goto LAB_001212f7;" goto statement_identifier ;) })) (expression_statement "pcVar7 = "missing or bad offset expression";" (assignment_expression "pcVar7 = "missing or bad offset expression"" identifier = (string_literal ""missing or bad offset expression"" " string_content ")) ;) }) (else_clause "else {\nLAB_001212eb:\n    psVar4 = make_expr_symbol(&exp);\n    (__ptr->u).a.offset_sym = psVar4;\nLAB_001212f7:\n    cVar1 = *input_line_pointer;\n    if (cVar1 == ' ') {\n      cVar1 = input_line_pointer[1];\n      input_line_pointer = input_line_pointer + 1;\n    }\n    if (cVar1 == ',') {\n      pcVar7 = input_line_pointer + 1;\n      if (input_line_pointer[1] == ' ') {\n        pcVar7 = input_line_pointer + 2;\n      }\n      input_line_pointer = pcVar7;\n      cVar1 = get_symbol_name(&r_name);\n      iVar2 = strncasecmp(r_name,"BFD_RELOC_",10);\n      if (iVar2 == 0) {\n        uVar9 = 0;\n        (__ptr->u).a.howto = (reloc_howto_type *)0x0;\n        p_Var8 = s_reloc::bfd_relocs;\n        iVar2 = strcasecmp(r_name + 10,"NONE");\n        while (iVar2 != 0) {\n          uVar9 = uVar9 + 1;\n          p_Var8 = p_Var8 + 1;\n          if (uVar9 == 5) goto LAB_001213d8;\n          iVar2 = strcasecmp(r_name + 10,p_Var8->name);\n        }\n        prVar5 = (reloc_howto_type *)\n                 bfd_reloc_type_lookup(stdoutput,s_reloc::bfd_relocs[uVar9].code);\n        (__ptr->u).a.howto = prVar5;\n      }\n      else {\n        prVar5 = (reloc_howto_type *)bfd_reloc_name_lookup(stdoutput,r_name);\n        (__ptr->u).a.howto = prVar5;\n      }\nLAB_001213d8:\n      pcVar7 = "unrecognized reloc type";\n      *input_line_pointer = cVar1;\n      if ((__ptr->u).a.howto != (reloc_howto_type *)0x0) {\n        exp._24_1_ = 1;\n        cVar1 = *input_line_pointer;\n        if (cVar1 == '\"') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ' ') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ',') {\n          input_line_pointer = input_line_pointer + 1;\n          expr(0,&exp,expr_normal);\n          switch(exp._24_1_) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar7 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            (__ptr->u).a.sym = (symbolS *)0x0;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          case 3:\n            (__ptr->u).a.sym = exp.X_add_symbol;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          default:\n            psVar4 = make_expr_symbol(&exp);\n            (__ptr->u).a.addend = 0;\n            (__ptr->u).a.sym = psVar4;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          (__ptr->u).a.sym = (symbolS *)0x0;\n          (__ptr->u).a.addend = 0;\n        }\n        pcVar7 = as_where(&__ptr->line);\n        __ptr->file = pcVar7;\n        __ptr->next = reloc_list;\n        reloc_list = __ptr;\n        demand_empty_rest_of_line();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar7 = "missing reloc type";\n    }\n  }" else (compound_statement "{\nLAB_001212eb:\n    psVar4 = make_expr_symbol(&exp);\n    (__ptr->u).a.offset_sym = psVar4;\nLAB_001212f7:\n    cVar1 = *input_line_pointer;\n    if (cVar1 == ' ') {\n      cVar1 = input_line_pointer[1];\n      input_line_pointer = input_line_pointer + 1;\n    }\n    if (cVar1 == ',') {\n      pcVar7 = input_line_pointer + 1;\n      if (input_line_pointer[1] == ' ') {\n        pcVar7 = input_line_pointer + 2;\n      }\n      input_line_pointer = pcVar7;\n      cVar1 = get_symbol_name(&r_name);\n      iVar2 = strncasecmp(r_name,"BFD_RELOC_",10);\n      if (iVar2 == 0) {\n        uVar9 = 0;\n        (__ptr->u).a.howto = (reloc_howto_type *)0x0;\n        p_Var8 = s_reloc::bfd_relocs;\n        iVar2 = strcasecmp(r_name + 10,"NONE");\n        while (iVar2 != 0) {\n          uVar9 = uVar9 + 1;\n          p_Var8 = p_Var8 + 1;\n          if (uVar9 == 5) goto LAB_001213d8;\n          iVar2 = strcasecmp(r_name + 10,p_Var8->name);\n        }\n        prVar5 = (reloc_howto_type *)\n                 bfd_reloc_type_lookup(stdoutput,s_reloc::bfd_relocs[uVar9].code);\n        (__ptr->u).a.howto = prVar5;\n      }\n      else {\n        prVar5 = (reloc_howto_type *)bfd_reloc_name_lookup(stdoutput,r_name);\n        (__ptr->u).a.howto = prVar5;\n      }\nLAB_001213d8:\n      pcVar7 = "unrecognized reloc type";\n      *input_line_pointer = cVar1;\n      if ((__ptr->u).a.howto != (reloc_howto_type *)0x0) {\n        exp._24_1_ = 1;\n        cVar1 = *input_line_pointer;\n        if (cVar1 == '\"') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ' ') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ',') {\n          input_line_pointer = input_line_pointer + 1;\n          expr(0,&exp,expr_normal);\n          switch(exp._24_1_) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar7 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            (__ptr->u).a.sym = (symbolS *)0x0;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          case 3:\n            (__ptr->u).a.sym = exp.X_add_symbol;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          default:\n            psVar4 = make_expr_symbol(&exp);\n            (__ptr->u).a.addend = 0;\n            (__ptr->u).a.sym = psVar4;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          (__ptr->u).a.sym = (symbolS *)0x0;\n          (__ptr->u).a.addend = 0;\n        }\n        pcVar7 = as_where(&__ptr->line);\n        __ptr->file = pcVar7;\n        __ptr->next = reloc_list;\n        reloc_list = __ptr;\n        demand_empty_rest_of_line();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar7 = "missing reloc type";\n    }\n  }" { (labeled_statement "LAB_001212eb:\n    psVar4 = make_expr_symbol(&exp);" statement_identifier : (expression_statement "psVar4 = make_expr_symbol(&exp);" (assignment_expression "psVar4 = make_expr_symbol(&exp)" identifier = (call_expression "make_expr_symbol(&exp)" identifier (argument_list "(&exp)" ( (pointer_expression "&exp" & identifier) )))) ;)) (expression_statement "(__ptr->u).a.offset_sym = psVar4;" (assignment_expression "(__ptr->u).a.offset_sym = psVar4" (field_expression "(__ptr->u).a.offset_sym" (field_expression "(__ptr->u).a" (parenthesized_expression "(__ptr->u)" ( (field_expression "__ptr->u" identifier -> field_identifier) )) . field_identifier) . field_identifier) = identifier) ;) (labeled_statement "LAB_001212f7:\n    cVar1 = *input_line_pointer;" statement_identifier : (expression_statement "cVar1 = *input_line_pointer;" (assignment_expression "cVar1 = *input_line_pointer" identifier = (pointer_expression "*input_line_pointer" * identifier)) ;)) (if_statement "if (cVar1 == ' ') {\n      cVar1 = input_line_pointer[1];\n      input_line_pointer = input_line_pointer + 1;\n    }" if (parenthesized_expression "(cVar1 == ' ')" ( (binary_expression "cVar1 == ' '" identifier == (char_literal "' '" ' character ')) )) (compound_statement "{\n      cVar1 = input_line_pointer[1];\n      input_line_pointer = input_line_pointer + 1;\n    }" { (expression_statement "cVar1 = input_line_pointer[1];" (assignment_expression "cVar1 = input_line_pointer[1]" identifier = (subscript_expression "input_line_pointer[1]" identifier [ number_literal ])) ;) (expression_statement "input_line_pointer = input_line_pointer + 1;" (assignment_expression "input_line_pointer = input_line_pointer + 1" identifier = (binary_expression "input_line_pointer + 1" identifier + number_literal)) ;) })) (if_statement "if (cVar1 == ',') {\n      pcVar7 = input_line_pointer + 1;\n      if (input_line_pointer[1] == ' ') {\n        pcVar7 = input_line_pointer + 2;\n      }\n      input_line_pointer = pcVar7;\n      cVar1 = get_symbol_name(&r_name);\n      iVar2 = strncasecmp(r_name,"BFD_RELOC_",10);\n      if (iVar2 == 0) {\n        uVar9 = 0;\n        (__ptr->u).a.howto = (reloc_howto_type *)0x0;\n        p_Var8 = s_reloc::bfd_relocs;\n        iVar2 = strcasecmp(r_name + 10,"NONE");\n        while (iVar2 != 0) {\n          uVar9 = uVar9 + 1;\n          p_Var8 = p_Var8 + 1;\n          if (uVar9 == 5) goto LAB_001213d8;\n          iVar2 = strcasecmp(r_name + 10,p_Var8->name);\n        }\n        prVar5 = (reloc_howto_type *)\n                 bfd_reloc_type_lookup(stdoutput,s_reloc::bfd_relocs[uVar9].code);\n        (__ptr->u).a.howto = prVar5;\n      }\n      else {\n        prVar5 = (reloc_howto_type *)bfd_reloc_name_lookup(stdoutput,r_name);\n        (__ptr->u).a.howto = prVar5;\n      }\nLAB_001213d8:\n      pcVar7 = "unrecognized reloc type";\n      *input_line_pointer = cVar1;\n      if ((__ptr->u).a.howto != (reloc_howto_type *)0x0) {\n        exp._24_1_ = 1;\n        cVar1 = *input_line_pointer;\n        if (cVar1 == '\"') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ' ') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ',') {\n          input_line_pointer = input_line_pointer + 1;\n          expr(0,&exp,expr_normal);\n          switch(exp._24_1_) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar7 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            (__ptr->u).a.sym = (symbolS *)0x0;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          case 3:\n            (__ptr->u).a.sym = exp.X_add_symbol;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          default:\n            psVar4 = make_expr_symbol(&exp);\n            (__ptr->u).a.addend = 0;\n            (__ptr->u).a.sym = psVar4;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          (__ptr->u).a.sym = (symbolS *)0x0;\n          (__ptr->u).a.addend = 0;\n        }\n        pcVar7 = as_where(&__ptr->line);\n        __ptr->file = pcVar7;\n        __ptr->next = reloc_list;\n        reloc_list = __ptr;\n        demand_empty_rest_of_line();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar7 = "missing reloc type";\n    }" if (parenthesized_expression "(cVar1 == ',')" ( (binary_expression "cVar1 == ','" identifier == (char_literal "','" ' character ')) )) (compound_statement "{\n      pcVar7 = input_line_pointer + 1;\n      if (input_line_pointer[1] == ' ') {\n        pcVar7 = input_line_pointer + 2;\n      }\n      input_line_pointer = pcVar7;\n      cVar1 = get_symbol_name(&r_name);\n      iVar2 = strncasecmp(r_name,"BFD_RELOC_",10);\n      if (iVar2 == 0) {\n        uVar9 = 0;\n        (__ptr->u).a.howto = (reloc_howto_type *)0x0;\n        p_Var8 = s_reloc::bfd_relocs;\n        iVar2 = strcasecmp(r_name + 10,"NONE");\n        while (iVar2 != 0) {\n          uVar9 = uVar9 + 1;\n          p_Var8 = p_Var8 + 1;\n          if (uVar9 == 5) goto LAB_001213d8;\n          iVar2 = strcasecmp(r_name + 10,p_Var8->name);\n        }\n        prVar5 = (reloc_howto_type *)\n                 bfd_reloc_type_lookup(stdoutput,s_reloc::bfd_relocs[uVar9].code);\n        (__ptr->u).a.howto = prVar5;\n      }\n      else {\n        prVar5 = (reloc_howto_type *)bfd_reloc_name_lookup(stdoutput,r_name);\n        (__ptr->u).a.howto = prVar5;\n      }\nLAB_001213d8:\n      pcVar7 = "unrecognized reloc type";\n      *input_line_pointer = cVar1;\n      if ((__ptr->u).a.howto != (reloc_howto_type *)0x0) {\n        exp._24_1_ = 1;\n        cVar1 = *input_line_pointer;\n        if (cVar1 == '\"') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ' ') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ',') {\n          input_line_pointer = input_line_pointer + 1;\n          expr(0,&exp,expr_normal);\n          switch(exp._24_1_) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar7 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            (__ptr->u).a.sym = (symbolS *)0x0;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          case 3:\n            (__ptr->u).a.sym = exp.X_add_symbol;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          default:\n            psVar4 = make_expr_symbol(&exp);\n            (__ptr->u).a.addend = 0;\n            (__ptr->u).a.sym = psVar4;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          (__ptr->u).a.sym = (symbolS *)0x0;\n          (__ptr->u).a.addend = 0;\n        }\n        pcVar7 = as_where(&__ptr->line);\n        __ptr->file = pcVar7;\n        __ptr->next = reloc_list;\n        reloc_list = __ptr;\n        demand_empty_rest_of_line();\n        goto joined_r0x0012147f;\n      }\n    }" { (expression_statement "pcVar7 = input_line_pointer + 1;" (assignment_expression "pcVar7 = input_line_pointer + 1" identifier = (binary_expression "input_line_pointer + 1" identifier + number_literal)) ;) (if_statement "if (input_line_pointer[1] == ' ') {\n        pcVar7 = input_line_pointer + 2;\n      }" if (parenthesized_expression "(input_line_pointer[1] == ' ')" ( (binary_expression "input_line_pointer[1] == ' '" (subscript_expression "input_line_pointer[1]" identifier [ number_literal ]) == (char_literal "' '" ' character ')) )) (compound_statement "{\n        pcVar7 = input_line_pointer + 2;\n      }" { (expression_statement "pcVar7 = input_line_pointer + 2;" (assignment_expression "pcVar7 = input_line_pointer + 2" identifier = (binary_expression "input_line_pointer + 2" identifier + number_literal)) ;) })) (expression_statement "input_line_pointer = pcVar7;" (assignment_expression "input_line_pointer = pcVar7" identifier = identifier) ;) (expression_statement "cVar1 = get_symbol_name(&r_name);" (assignment_expression "cVar1 = get_symbol_name(&r_name)" identifier = (call_expression "get_symbol_name(&r_name)" identifier (argument_list "(&r_name)" ( (pointer_expression "&r_name" & identifier) )))) ;) (expression_statement "iVar2 = strncasecmp(r_name,"BFD_RELOC_",10);" (assignment_expression "iVar2 = strncasecmp(r_name,"BFD_RELOC_",10)" identifier = (call_expression "strncasecmp(r_name,"BFD_RELOC_",10)" identifier (argument_list "(r_name,"BFD_RELOC_",10)" ( identifier , (string_literal ""BFD_RELOC_"" " string_content ") , number_literal )))) ;) (if_statement "if (iVar2 == 0) {\n        uVar9 = 0;\n        (__ptr->u).a.howto = (reloc_howto_type *)0x0;\n        p_Var8 = s_reloc::bfd_relocs;\n        iVar2 = strcasecmp(r_name + 10,"NONE");\n        while (iVar2 != 0) {\n          uVar9 = uVar9 + 1;\n          p_Var8 = p_Var8 + 1;\n          if (uVar9 == 5) goto LAB_001213d8;\n          iVar2 = strcasecmp(r_name + 10,p_Var8->name);\n        }\n        prVar5 = (reloc_howto_type *)\n                 bfd_reloc_type_lookup(stdoutput,s_reloc::bfd_relocs[uVar9].code);\n        (__ptr->u).a.howto = prVar5;\n      }\n      else {\n        prVar5 = (reloc_howto_type *)bfd_reloc_name_lookup(stdoutput,r_name);\n        (__ptr->u).a.howto = prVar5;\n      }" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (compound_statement "{\n        uVar9 = 0;\n        (__ptr->u).a.howto = (reloc_howto_type *)0x0;\n        p_Var8 = s_reloc::bfd_relocs;\n        iVar2 = strcasecmp(r_name + 10,"NONE");\n        while (iVar2 != 0) {\n          uVar9 = uVar9 + 1;\n          p_Var8 = p_Var8 + 1;\n          if (uVar9 == 5) goto LAB_001213d8;\n          iVar2 = strcasecmp(r_name + 10,p_Var8->name);\n        }\n        prVar5 = (reloc_howto_type *)\n                 bfd_reloc_type_lookup(stdoutput,s_reloc::bfd_relocs[uVar9].code);\n        (__ptr->u).a.howto = prVar5;\n      }" { (expression_statement "uVar9 = 0;" (assignment_expression "uVar9 = 0" identifier = number_literal) ;) (expression_statement "(__ptr->u).a.howto = (reloc_howto_type *)0x0;" (assignment_expression "(__ptr->u).a.howto = (reloc_howto_type *)0x0" (field_expression "(__ptr->u).a.howto" (field_expression "(__ptr->u).a" (parenthesized_expression "(__ptr->u)" ( (field_expression "__ptr->u" identifier -> field_identifier) )) . field_identifier) . field_identifier) = (cast_expression "(reloc_howto_type *)0x0" ( (type_descriptor "reloc_howto_type *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "p_Var8 = s_reloc::bfd_relocs;" (assignment_expression "p_Var8 = s_reloc" identifier = identifier) (ERROR "::bfd_relocs" : : identifier) ;) (expression_statement "iVar2 = strcasecmp(r_name + 10,"NONE");" (assignment_expression "iVar2 = strcasecmp(r_name + 10,"NONE")" identifier = (call_expression "strcasecmp(r_name + 10,"NONE")" identifier (argument_list "(r_name + 10,"NONE")" ( (binary_expression "r_name + 10" identifier + number_literal) , (string_literal ""NONE"" " string_content ") )))) ;) (while_statement "while (iVar2 != 0) {\n          uVar9 = uVar9 + 1;\n          p_Var8 = p_Var8 + 1;\n          if (uVar9 == 5) goto LAB_001213d8;\n          iVar2 = strcasecmp(r_name + 10,p_Var8->name);\n        }" while (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar9 = uVar9 + 1;\n          p_Var8 = p_Var8 + 1;\n          if (uVar9 == 5) goto LAB_001213d8;\n          iVar2 = strcasecmp(r_name + 10,p_Var8->name);\n        }" { (expression_statement "uVar9 = uVar9 + 1;" (assignment_expression "uVar9 = uVar9 + 1" identifier = (binary_expression "uVar9 + 1" identifier + number_literal)) ;) (expression_statement "p_Var8 = p_Var8 + 1;" (assignment_expression "p_Var8 = p_Var8 + 1" identifier = (binary_expression "p_Var8 + 1" identifier + number_literal)) ;) (if_statement "if (uVar9 == 5) goto LAB_001213d8;" if (parenthesized_expression "(uVar9 == 5)" ( (binary_expression "uVar9 == 5" identifier == number_literal) )) (goto_statement "goto LAB_001213d8;" goto statement_identifier ;)) (expression_statement "iVar2 = strcasecmp(r_name + 10,p_Var8->name);" (assignment_expression "iVar2 = strcasecmp(r_name + 10,p_Var8->name)" identifier = (call_expression "strcasecmp(r_name + 10,p_Var8->name)" identifier (argument_list "(r_name + 10,p_Var8->name)" ( (binary_expression "r_name + 10" identifier + number_literal) , (field_expression "p_Var8->name" identifier -> field_identifier) )))) ;) })) (expression_statement "prVar5 = (reloc_howto_type *)\n                 bfd_reloc_type_lookup(stdoutput,s_reloc::bfd_relocs[uVar9].code);" (assignment_expression "prVar5 = (reloc_howto_type *)\n                 bfd_reloc_type_lookup(stdoutput,s_reloc::bfd_relocs[uVar9].code)" identifier = (cast_expression "(reloc_howto_type *)\n                 bfd_reloc_type_lookup(stdoutput,s_reloc::bfd_relocs[uVar9].code)" ( (type_descriptor "reloc_howto_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "bfd_reloc_type_lookup(stdoutput,s_reloc::bfd_relocs[uVar9].code)" identifier (argument_list "(stdoutput,s_reloc::bfd_relocs[uVar9].code)" ( identifier , (ERROR "s_reloc::" identifier : :) (field_expression "bfd_relocs[uVar9].code" (subscript_expression "bfd_relocs[uVar9]" identifier [ identifier ]) . field_identifier) ))))) ;) (expression_statement "(__ptr->u).a.howto = prVar5;" (assignment_expression "(__ptr->u).a.howto = prVar5" (field_expression "(__ptr->u).a.howto" (field_expression "(__ptr->u).a" (parenthesized_expression "(__ptr->u)" ( (field_expression "__ptr->u" identifier -> field_identifier) )) . field_identifier) . field_identifier) = identifier) ;) }) (else_clause "else {\n        prVar5 = (reloc_howto_type *)bfd_reloc_name_lookup(stdoutput,r_name);\n        (__ptr->u).a.howto = prVar5;\n      }" else (compound_statement "{\n        prVar5 = (reloc_howto_type *)bfd_reloc_name_lookup(stdoutput,r_name);\n        (__ptr->u).a.howto = prVar5;\n      }" { (expression_statement "prVar5 = (reloc_howto_type *)bfd_reloc_name_lookup(stdoutput,r_name);" (assignment_expression "prVar5 = (reloc_howto_type *)bfd_reloc_name_lookup(stdoutput,r_name)" identifier = (cast_expression "(reloc_howto_type *)bfd_reloc_name_lookup(stdoutput,r_name)" ( (type_descriptor "reloc_howto_type *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "bfd_reloc_name_lookup(stdoutput,r_name)" identifier (argument_list "(stdoutput,r_name)" ( identifier , identifier ))))) ;) (expression_statement "(__ptr->u).a.howto = prVar5;" (assignment_expression "(__ptr->u).a.howto = prVar5" (field_expression "(__ptr->u).a.howto" (field_expression "(__ptr->u).a" (parenthesized_expression "(__ptr->u)" ( (field_expression "__ptr->u" identifier -> field_identifier) )) . field_identifier) . field_identifier) = identifier) ;) }))) (labeled_statement "LAB_001213d8:\n      pcVar7 = "unrecognized reloc type";" statement_identifier : (expression_statement "pcVar7 = "unrecognized reloc type";" (assignment_expression "pcVar7 = "unrecognized reloc type"" identifier = (string_literal ""unrecognized reloc type"" " string_content ")) ;)) (expression_statement "*input_line_pointer = cVar1;" (assignment_expression "*input_line_pointer = cVar1" (pointer_expression "*input_line_pointer" * identifier) = identifier) ;) (if_statement "if ((__ptr->u).a.howto != (reloc_howto_type *)0x0) {\n        exp._24_1_ = 1;\n        cVar1 = *input_line_pointer;\n        if (cVar1 == '\"') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ' ') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ',') {\n          input_line_pointer = input_line_pointer + 1;\n          expr(0,&exp,expr_normal);\n          switch(exp._24_1_) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar7 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            (__ptr->u).a.sym = (symbolS *)0x0;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          case 3:\n            (__ptr->u).a.sym = exp.X_add_symbol;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          default:\n            psVar4 = make_expr_symbol(&exp);\n            (__ptr->u).a.addend = 0;\n            (__ptr->u).a.sym = psVar4;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          (__ptr->u).a.sym = (symbolS *)0x0;\n          (__ptr->u).a.addend = 0;\n        }\n        pcVar7 = as_where(&__ptr->line);\n        __ptr->file = pcVar7;\n        __ptr->next = reloc_list;\n        reloc_list = __ptr;\n        demand_empty_rest_of_line();\n        goto joined_r0x0012147f;\n      }" if (parenthesized_expression "((__ptr->u).a.howto != (reloc_howto_type *)0x0)" ( (binary_expression "(__ptr->u).a.howto != (reloc_howto_type *)0x0" (field_expression "(__ptr->u).a.howto" (field_expression "(__ptr->u).a" (parenthesized_expression "(__ptr->u)" ( (field_expression "__ptr->u" identifier -> field_identifier) )) . field_identifier) . field_identifier) != (cast_expression "(reloc_howto_type *)0x0" ( (type_descriptor "reloc_howto_type *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n        exp._24_1_ = 1;\n        cVar1 = *input_line_pointer;\n        if (cVar1 == '\"') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ' ') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }\n        if (cVar1 == ',') {\n          input_line_pointer = input_line_pointer + 1;\n          expr(0,&exp,expr_normal);\n          switch(exp._24_1_) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar7 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            (__ptr->u).a.sym = (symbolS *)0x0;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          case 3:\n            (__ptr->u).a.sym = exp.X_add_symbol;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          default:\n            psVar4 = make_expr_symbol(&exp);\n            (__ptr->u).a.addend = 0;\n            (__ptr->u).a.sym = psVar4;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          (__ptr->u).a.sym = (symbolS *)0x0;\n          (__ptr->u).a.addend = 0;\n        }\n        pcVar7 = as_where(&__ptr->line);\n        __ptr->file = pcVar7;\n        __ptr->next = reloc_list;\n        reloc_list = __ptr;\n        demand_empty_rest_of_line();\n        goto joined_r0x0012147f;\n      }" { (expression_statement "exp._24_1_ = 1;" (assignment_expression "exp._24_1_ = 1" (field_expression "exp._24_1_" identifier . field_identifier) = number_literal) ;) (expression_statement "cVar1 = *input_line_pointer;" (assignment_expression "cVar1 = *input_line_pointer" identifier = (pointer_expression "*input_line_pointer" * identifier)) ;) (if_statement "if (cVar1 == '\"') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }" if (parenthesized_expression "(cVar1 == '\"')" ( (binary_expression "cVar1 == '\"'" identifier == (char_literal "'\"'" ' escape_sequence ')) )) (compound_statement "{\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }" { (expression_statement "cVar1 = input_line_pointer[1];" (assignment_expression "cVar1 = input_line_pointer[1]" identifier = (subscript_expression "input_line_pointer[1]" identifier [ number_literal ])) ;) (expression_statement "input_line_pointer = input_line_pointer + 1;" (assignment_expression "input_line_pointer = input_line_pointer + 1" identifier = (binary_expression "input_line_pointer + 1" identifier + number_literal)) ;) })) (if_statement "if (cVar1 == ' ') {\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }" if (parenthesized_expression "(cVar1 == ' ')" ( (binary_expression "cVar1 == ' '" identifier == (char_literal "' '" ' character ')) )) (compound_statement "{\n          cVar1 = input_line_pointer[1];\n          input_line_pointer = input_line_pointer + 1;\n        }" { (expression_statement "cVar1 = input_line_pointer[1];" (assignment_expression "cVar1 = input_line_pointer[1]" identifier = (subscript_expression "input_line_pointer[1]" identifier [ number_literal ])) ;) (expression_statement "input_line_pointer = input_line_pointer + 1;" (assignment_expression "input_line_pointer = input_line_pointer + 1" identifier = (binary_expression "input_line_pointer + 1" identifier + number_literal)) ;) })) (if_statement "if (cVar1 == ',') {\n          input_line_pointer = input_line_pointer + 1;\n          expr(0,&exp,expr_normal);\n          switch(exp._24_1_) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar7 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            (__ptr->u).a.sym = (symbolS *)0x0;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          case 3:\n            (__ptr->u).a.sym = exp.X_add_symbol;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          default:\n            psVar4 = make_expr_symbol(&exp);\n            (__ptr->u).a.addend = 0;\n            (__ptr->u).a.sym = psVar4;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          (__ptr->u).a.sym = (symbolS *)0x0;\n          (__ptr->u).a.addend = 0;\n        }" if (parenthesized_expression "(cVar1 == ',')" ( (binary_expression "cVar1 == ','" identifier == (char_literal "','" ' character ')) )) (compound_statement "{\n          input_line_pointer = input_line_pointer + 1;\n          expr(0,&exp,expr_normal);\n          switch(exp._24_1_) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar7 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            (__ptr->u).a.sym = (symbolS *)0x0;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          case 3:\n            (__ptr->u).a.sym = exp.X_add_symbol;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          default:\n            psVar4 = make_expr_symbol(&exp);\n            (__ptr->u).a.addend = 0;\n            (__ptr->u).a.sym = psVar4;\n          }\n        }" { (expression_statement "input_line_pointer = input_line_pointer + 1;" (assignment_expression "input_line_pointer = input_line_pointer + 1" identifier = (binary_expression "input_line_pointer + 1" identifier + number_literal)) ;) (expression_statement "expr(0,&exp,expr_normal);" (call_expression "expr(0,&exp,expr_normal)" identifier (argument_list "(0,&exp,expr_normal)" ( number_literal , (pointer_expression "&exp" & identifier) , identifier ))) ;) (switch_statement "switch(exp._24_1_) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar7 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            (__ptr->u).a.sym = (symbolS *)0x0;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          case 3:\n            (__ptr->u).a.sym = exp.X_add_symbol;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          default:\n            psVar4 = make_expr_symbol(&exp);\n            (__ptr->u).a.addend = 0;\n            (__ptr->u).a.sym = psVar4;\n          }" switch (parenthesized_expression "(exp._24_1_)" ( (field_expression "exp._24_1_" identifier . field_identifier) )) (compound_statement "{\n          case 0:\n          case 5:\n          case 6:\n            pcVar7 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            (__ptr->u).a.sym = (symbolS *)0x0;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          case 3:\n            (__ptr->u).a.sym = exp.X_add_symbol;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;\n          default:\n            psVar4 = make_expr_symbol(&exp);\n            (__ptr->u).a.addend = 0;\n            (__ptr->u).a.sym = psVar4;\n          }" { (case_statement "case 0:" case number_literal :) (case_statement "case 5:" case number_literal :) (case_statement "case 6:\n            pcVar7 = "bad reloc expression";\n            goto LAB_001214f0;" case number_literal : (expression_statement "pcVar7 = "bad reloc expression";" (assignment_expression "pcVar7 = "bad reloc expression"" identifier = (string_literal ""bad reloc expression"" " string_content ")) ;) (goto_statement "goto LAB_001214f0;" goto statement_identifier ;)) (case_statement "case 1:\n            goto switchD_00121578_caseD_1;" case number_literal : (goto_statement "goto switchD_00121578_caseD_1;" goto statement_identifier ;)) (case_statement "case 2:\n            (__ptr->u).a.sym = (symbolS *)0x0;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;" case number_literal : (expression_statement "(__ptr->u).a.sym = (symbolS *)0x0;" (assignment_expression "(__ptr->u).a.sym = (symbolS *)0x0" (field_expression "(__ptr->u).a.sym" (field_expression "(__ptr->u).a" (parenthesized_expression "(__ptr->u)" ( (field_expression "__ptr->u" identifier -> field_identifier) )) . field_identifier) . field_identifier) = (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) (expression_statement "(__ptr->u).a.addend = exp.X_add_number;" (assignment_expression "(__ptr->u).a.addend = exp.X_add_number" (field_expression "(__ptr->u).a.addend" (field_expression "(__ptr->u).a" (parenthesized_expression "(__ptr->u)" ( (field_expression "__ptr->u" identifier -> field_identifier) )) . field_identifier) . field_identifier) = (field_expression "exp.X_add_number" identifier . field_identifier)) ;) (break_statement "break;" break ;)) (case_statement "case 3:\n            (__ptr->u).a.sym = exp.X_add_symbol;\n            (__ptr->u).a.addend = exp.X_add_number;\n            break;" case number_literal : (expression_statement "(__ptr->u).a.sym = exp.X_add_symbol;" (assignment_expression "(__ptr->u).a.sym = exp.X_add_symbol" (field_expression "(__ptr->u).a.sym" (field_expression "(__ptr->u).a" (parenthesized_expression "(__ptr->u)" ( (field_expression "__ptr->u" identifier -> field_identifier) )) . field_identifier) . field_identifier) = (field_expression "exp.X_add_symbol" identifier . field_identifier)) ;) (expression_statement "(__ptr->u).a.addend = exp.X_add_number;" (assignment_expression "(__ptr->u).a.addend = exp.X_add_number" (field_expression "(__ptr->u).a.addend" (field_expression "(__ptr->u).a" (parenthesized_expression "(__ptr->u)" ( (field_expression "__ptr->u" identifier -> field_identifier) )) . field_identifier) . field_identifier) = (field_expression "exp.X_add_number" identifier . field_identifier)) ;) (break_statement "break;" break ;)) (case_statement "default:\n            psVar4 = make_expr_symbol(&exp);\n            (__ptr->u).a.addend = 0;\n            (__ptr->u).a.sym = psVar4;" default : (expression_statement "psVar4 = make_expr_symbol(&exp);" (assignment_expression "psVar4 = make_expr_symbol(&exp)" identifier = (call_expression "make_expr_symbol(&exp)" identifier (argument_list "(&exp)" ( (pointer_expression "&exp" & identifier) )))) ;) (expression_statement "(__ptr->u).a.addend = 0;" (assignment_expression "(__ptr->u).a.addend = 0" (field_expression "(__ptr->u).a.addend" (field_expression "(__ptr->u).a" (parenthesized_expression "(__ptr->u)" ( (field_expression "__ptr->u" identifier -> field_identifier) )) . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "(__ptr->u).a.sym = psVar4;" (assignment_expression "(__ptr->u).a.sym = psVar4" (field_expression "(__ptr->u).a.sym" (field_expression "(__ptr->u).a" (parenthesized_expression "(__ptr->u)" ( (field_expression "__ptr->u" identifier -> field_identifier) )) . field_identifier) . field_identifier) = identifier) ;)) })) }) (else_clause "else {\nswitchD_00121578_caseD_1:\n          (__ptr->u).a.sym = (symbolS *)0x0;\n          (__ptr->u).a.addend = 0;\n        }" else (compound_statement "{\nswitchD_00121578_caseD_1:\n          (__ptr->u).a.sym = (symbolS *)0x0;\n          (__ptr->u).a.addend = 0;\n        }" { (labeled_statement "switchD_00121578_caseD_1:\n          (__ptr->u).a.sym = (symbolS *)0x0;" statement_identifier : (expression_statement "(__ptr->u).a.sym = (symbolS *)0x0;" (assignment_expression "(__ptr->u).a.sym = (symbolS *)0x0" (field_expression "(__ptr->u).a.sym" (field_expression "(__ptr->u).a" (parenthesized_expression "(__ptr->u)" ( (field_expression "__ptr->u" identifier -> field_identifier) )) . field_identifier) . field_identifier) = (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;)) (expression_statement "(__ptr->u).a.addend = 0;" (assignment_expression "(__ptr->u).a.addend = 0" (field_expression "(__ptr->u).a.addend" (field_expression "(__ptr->u).a" (parenthesized_expression "(__ptr->u)" ( (field_expression "__ptr->u" identifier -> field_identifier) )) . field_identifier) . field_identifier) = number_literal) ;) }))) (expression_statement "pcVar7 = as_where(&__ptr->line);" (assignment_expression "pcVar7 = as_where(&__ptr->line)" identifier = (call_expression "as_where(&__ptr->line)" identifier (argument_list "(&__ptr->line)" ( (pointer_expression "&__ptr->line" & (field_expression "__ptr->line" identifier -> field_identifier)) )))) ;) (expression_statement "__ptr->file = pcVar7;" (assignment_expression "__ptr->file = pcVar7" (field_expression "__ptr->file" identifier -> field_identifier) = identifier) ;) (expression_statement "__ptr->next = reloc_list;" (assignment_expression "__ptr->next = reloc_list" (field_expression "__ptr->next" identifier -> field_identifier) = identifier) ;) (expression_statement "reloc_list = __ptr;" (assignment_expression "reloc_list = __ptr" identifier = identifier) ;) (expression_statement "demand_empty_rest_of_line();" (call_expression "demand_empty_rest_of_line()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto joined_r0x0012147f;" goto statement_identifier ;) })) }) (else_clause "else {\n      pcVar7 = "missing reloc type";\n    }" else (compound_statement "{\n      pcVar7 = "missing reloc type";\n    }" { (expression_statement "pcVar7 = "missing reloc type";" (assignment_expression "pcVar7 = "missing reloc type"" identifier = (string_literal ""missing reloc type"" " string_content ")) ;) }))) }))) (labeled_statement "LAB_001214f0:\n  pcVar7 = (char *)dcgettext(0,pcVar7,5);" statement_identifier : (expression_statement "pcVar7 = (char *)dcgettext(0,pcVar7,5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,pcVar7,5)" identifier = (cast_expression "(char *)dcgettext(0,pcVar7,5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,pcVar7,5)" identifier (argument_list "(0,pcVar7,5)" ( number_literal , identifier , number_literal ))))) ;)) (expression_statement "as_bad(pcVar7);" (call_expression "as_bad(pcVar7)" identifier (argument_list "(pcVar7)" ( identifier ))) ;) (expression_statement "ignore_rest_of_line();" (call_expression "ignore_rest_of_line()" identifier (argument_list "()" ( ))) ;) (expression_statement "free(__ptr);" (call_expression "free(__ptr)" identifier (argument_list "(__ptr)" ( identifier ))) ;) (labeled_statement "joined_r0x0012147f:\n  if (flag_mri == 0) {\n    return;\n  }" statement_identifier : (if_statement "if (flag_mri == 0) {\n    return;\n  }" if (parenthesized_expression "(flag_mri == 0)" ( (binary_expression "flag_mri == 0" identifier == number_literal) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) }))) (expression_statement "mri_comment_end((char *)stop,(int)(char)bVar6);" (call_expression "mri_comment_end((char *)stop,(int)(char)bVar6)" identifier (argument_list "((char *)stop,(int)(char)bVar6)" ( (cast_expression "(char *)stop" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(int)(char)bVar6" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar6" ( (type_descriptor "char" primitive_type) ) identifier)) ))) ;) (return_statement "return;" return ;) })))
(translation_unit "void FUN_00121250(void)\n\n{\n  char cVar1;\n  byte *pbVar2;\n  byte bVar3;\n  int iVar4;\n  undefined8 *__ptr;\n  ulong uVar5;\n  undefined8 uVar6;\n  byte bVar7;\n  char *pcVar8;\n  undefined **ppuVar9;\n  uint uVar10;\n  byte *pbVar11;\n  char *local_60;\n  undefined8 local_58 [2];\n  long local_48;\n  byte local_40;\n  \n  __ptr = (undefined8 *)xmalloc(0x48);\n  if (DAT_001e4650 == 0) {\n    bVar7 = 0;\n    pbVar11 = (byte *)0x0;\n  }\n  else {\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }\n  FUN_00114ae0(0,local_58,1);\n  if (local_40 < 7) {\n    uVar5 = 1L << (local_40 & 0x3f);\n    if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }\n    pcVar8 = "missing or bad offset expression";\n  }\n  else {\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }\nLAB_001214f0:\n  uVar6 = dcgettext(0,pcVar8,5);\n  FUN_0011da70(uVar6);\n  FUN_0011fd80();\n  free(__ptr);\njoined_r0x0012147f:\n  if (DAT_001e4650 == 0) {\n    return;\n  }\n  FUN_0011f810(pbVar11,(int)(char)bVar7);\n  return;\n}\n\n" (function_definition "void FUN_00121250(void)\n\n{\n  char cVar1;\n  byte *pbVar2;\n  byte bVar3;\n  int iVar4;\n  undefined8 *__ptr;\n  ulong uVar5;\n  undefined8 uVar6;\n  byte bVar7;\n  char *pcVar8;\n  undefined **ppuVar9;\n  uint uVar10;\n  byte *pbVar11;\n  char *local_60;\n  undefined8 local_58 [2];\n  long local_48;\n  byte local_40;\n  \n  __ptr = (undefined8 *)xmalloc(0x48);\n  if (DAT_001e4650 == 0) {\n    bVar7 = 0;\n    pbVar11 = (byte *)0x0;\n  }\n  else {\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }\n  FUN_00114ae0(0,local_58,1);\n  if (local_40 < 7) {\n    uVar5 = 1L << (local_40 & 0x3f);\n    if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }\n    pcVar8 = "missing or bad offset expression";\n  }\n  else {\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }\nLAB_001214f0:\n  uVar6 = dcgettext(0,pcVar8,5);\n  FUN_0011da70(uVar6);\n  FUN_0011fd80();\n  free(__ptr);\njoined_r0x0012147f:\n  if (DAT_001e4650 == 0) {\n    return;\n  }\n  FUN_0011f810(pbVar11,(int)(char)bVar7);\n  return;\n}" primitive_type (function_declarator "FUN_00121250(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  char cVar1;\n  byte *pbVar2;\n  byte bVar3;\n  int iVar4;\n  undefined8 *__ptr;\n  ulong uVar5;\n  undefined8 uVar6;\n  byte bVar7;\n  char *pcVar8;\n  undefined **ppuVar9;\n  uint uVar10;\n  byte *pbVar11;\n  char *local_60;\n  undefined8 local_58 [2];\n  long local_48;\n  byte local_40;\n  \n  __ptr = (undefined8 *)xmalloc(0x48);\n  if (DAT_001e4650 == 0) {\n    bVar7 = 0;\n    pbVar11 = (byte *)0x0;\n  }\n  else {\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }\n  FUN_00114ae0(0,local_58,1);\n  if (local_40 < 7) {\n    uVar5 = 1L << (local_40 & 0x3f);\n    if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }\n    pcVar8 = "missing or bad offset expression";\n  }\n  else {\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }\nLAB_001214f0:\n  uVar6 = dcgettext(0,pcVar8,5);\n  FUN_0011da70(uVar6);\n  FUN_0011fd80();\n  free(__ptr);\njoined_r0x0012147f:\n  if (DAT_001e4650 == 0) {\n    return;\n  }\n  FUN_0011f810(pbVar11,(int)(char)bVar7);\n  return;\n}" { (declaration "char cVar1;" primitive_type identifier ;) (declaration "byte *pbVar2;" type_identifier (pointer_declarator "*pbVar2" * identifier) ;) (declaration "byte bVar3;" type_identifier identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "undefined8 *__ptr;" type_identifier (pointer_declarator "*__ptr" * identifier) ;) (declaration "ulong uVar5;" type_identifier identifier ;) (declaration "undefined8 uVar6;" type_identifier identifier ;) (declaration "byte bVar7;" type_identifier identifier ;) (declaration "char *pcVar8;" primitive_type (pointer_declarator "*pcVar8" * identifier) ;) (declaration "undefined **ppuVar9;" type_identifier (pointer_declarator "**ppuVar9" * (pointer_declarator "*ppuVar9" * identifier)) ;) (declaration "uint uVar10;" type_identifier identifier ;) (declaration "byte *pbVar11;" type_identifier (pointer_declarator "*pbVar11" * identifier) ;) (declaration "char *local_60;" primitive_type (pointer_declarator "*local_60" * identifier) ;) (declaration "undefined8 local_58 [2];" type_identifier (array_declarator "local_58 [2]" identifier [ number_literal ]) ;) (declaration "long local_48;" (sized_type_specifier "long" long) identifier ;) (declaration "byte local_40;" type_identifier identifier ;) (expression_statement "__ptr = (undefined8 *)xmalloc(0x48);" (assignment_expression "__ptr = (undefined8 *)xmalloc(0x48)" identifier = (cast_expression "(undefined8 *)xmalloc(0x48)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(0x48)" identifier (argument_list "(0x48)" ( number_literal ))))) ;) (if_statement "if (DAT_001e4650 == 0) {\n    bVar7 = 0;\n    pbVar11 = (byte *)0x0;\n  }\n  else {\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }" if (parenthesized_expression "(DAT_001e4650 == 0)" ( (binary_expression "DAT_001e4650 == 0" identifier == number_literal) )) (compound_statement "{\n    bVar7 = 0;\n    pbVar11 = (byte *)0x0;\n  }" { (expression_statement "bVar7 = 0;" (assignment_expression "bVar7 = 0" identifier = number_literal) ;) (expression_statement "pbVar11 = (byte *)0x0;" (assignment_expression "pbVar11 = (byte *)0x0" identifier = (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ;) }) (else_clause "else {\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }" else (compound_statement "{\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }" { (expression_statement "bVar7 = *DAT_001e4780;" (assignment_expression "bVar7 = *DAT_001e4780" identifier = (pointer_expression "*DAT_001e4780" * identifier)) ;) (expression_statement "cVar1 = (&DAT_001da4e0)[bVar7];" (assignment_expression "cVar1 = (&DAT_001da4e0)[bVar7]" identifier = (subscript_expression "(&DAT_001da4e0)[bVar7]" (parenthesized_expression "(&DAT_001da4e0)" ( (pointer_expression "&DAT_001da4e0" & identifier) )) [ identifier ])) ;) (expression_statement "pbVar11 = DAT_001e4780;" (assignment_expression "pbVar11 = DAT_001e4780" identifier = identifier) ;) (while_statement "while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }" while (parenthesized_expression "(cVar1 == '\0')" ( (binary_expression "cVar1 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }" { (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" identifier = (binary_expression "pbVar11 + 1" identifier + number_literal)) ;) (expression_statement "bVar7 = *pbVar11;" (assignment_expression "bVar7 = *pbVar11" identifier = (pointer_expression "*pbVar11" * identifier)) ;) (expression_statement "cVar1 = (&DAT_001da4e0)[bVar7];" (assignment_expression "cVar1 = (&DAT_001da4e0)[bVar7]" identifier = (subscript_expression "(&DAT_001da4e0)[bVar7]" (parenthesized_expression "(&DAT_001da4e0)" ( (pointer_expression "&DAT_001da4e0" & identifier) )) [ identifier ])) ;) })) (expression_statement "*pbVar11 = 0;" (assignment_expression "*pbVar11 = 0" (pointer_expression "*pbVar11" * identifier) = number_literal) ;) }))) (expression_statement "FUN_00114ae0(0,local_58,1);" (call_expression "FUN_00114ae0(0,local_58,1)" identifier (argument_list "(0,local_58,1)" ( number_literal , identifier , number_literal ))) ;) (if_statement "if (local_40 < 7) {\n    uVar5 = 1L << (local_40 & 0x3f);\n    if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }\n    pcVar8 = "missing or bad offset expression";\n  }\n  else {\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }" if (parenthesized_expression "(local_40 < 7)" ( (binary_expression "local_40 < 7" identifier < number_literal) )) (compound_statement "{\n    uVar5 = 1L << (local_40 & 0x3f);\n    if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }\n    pcVar8 = "missing or bad offset expression";\n  }" { (expression_statement "uVar5 = 1L << (local_40 & 0x3f);" (assignment_expression "uVar5 = 1L << (local_40 & 0x3f)" identifier = (binary_expression "1L << (local_40 & 0x3f)" number_literal << (parenthesized_expression "(local_40 & 0x3f)" ( (binary_expression "local_40 & 0x3f" identifier & number_literal) )))) ;) (if_statement "if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }" if (parenthesized_expression "((uVar5 & 99) == 0)" ( (binary_expression "(uVar5 & 99) == 0" (parenthesized_expression "(uVar5 & 99)" ( (binary_expression "uVar5 & 99" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }" { (if_statement "if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }" if (parenthesized_expression "((uVar5 & 8) == 0)" ( (binary_expression "(uVar5 & 8) == 0" (parenthesized_expression "(uVar5 & 8)" ( (binary_expression "uVar5 & 8" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }" { (if_statement "if ((uVar5 & 4) == 0) goto LAB_001212eb;" if (parenthesized_expression "((uVar5 & 4) == 0)" ( (binary_expression "(uVar5 & 4) == 0" (parenthesized_expression "(uVar5 & 4)" ( (binary_expression "uVar5 & 4" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_001212eb;" goto statement_identifier ;)) (expression_statement "local_58[0] = FUN_001279c0(DAT_001e44a8);" (assignment_expression "local_58[0] = FUN_001279c0(DAT_001e44a8)" (subscript_expression "local_58[0]" identifier [ number_literal ]) = (call_expression "FUN_001279c0(DAT_001e44a8)" identifier (argument_list "(DAT_001e44a8)" ( identifier )))) ;) (expression_statement "local_40 = 3;" (assignment_expression "local_40 = 3" identifier = number_literal) ;) })) (if_statement "if (local_48 != 0) goto LAB_001212eb;" if (parenthesized_expression "(local_48 != 0)" ( (binary_expression "local_48 != 0" identifier != number_literal) )) (goto_statement "goto LAB_001212eb;" goto statement_identifier ;)) (expression_statement "__ptr[1] = local_58[0];" (assignment_expression "__ptr[1] = local_58[0]" (subscript_expression "__ptr[1]" identifier [ number_literal ]) = (subscript_expression "local_58[0]" identifier [ number_literal ])) ;) (goto_statement "goto LAB_001212f7;" goto statement_identifier ;) })) (expression_statement "pcVar8 = "missing or bad offset expression";" (assignment_expression "pcVar8 = "missing or bad offset expression"" identifier = (string_literal ""missing or bad offset expression"" " string_content ")) ;) }) (else_clause "else {\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }" else (compound_statement "{\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }" { (labeled_statement "LAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);" statement_identifier : (expression_statement "uVar6 = FUN_00113ee0(local_58);" (assignment_expression "uVar6 = FUN_00113ee0(local_58)" identifier = (call_expression "FUN_00113ee0(local_58)" identifier (argument_list "(local_58)" ( identifier )))) ;)) (expression_statement "__ptr[1] = uVar6;" (assignment_expression "__ptr[1] = uVar6" (subscript_expression "__ptr[1]" identifier [ number_literal ]) = identifier) ;) (labeled_statement "LAB_001212f7:\n    bVar3 = *DAT_001e4780;" statement_identifier : (expression_statement "bVar3 = *DAT_001e4780;" (assignment_expression "bVar3 = *DAT_001e4780" identifier = (pointer_expression "*DAT_001e4780" * identifier)) ;)) (if_statement "if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }" if (parenthesized_expression "(bVar3 == 0x20)" ( (binary_expression "bVar3 == 0x20" identifier == number_literal) )) (compound_statement "{\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }" { (expression_statement "bVar3 = DAT_001e4780[1];" (assignment_expression "bVar3 = DAT_001e4780[1]" identifier = (subscript_expression "DAT_001e4780[1]" identifier [ number_literal ])) ;) (expression_statement "DAT_001e4780 = DAT_001e4780 + 1;" (assignment_expression "DAT_001e4780 = DAT_001e4780 + 1" identifier = (binary_expression "DAT_001e4780 + 1" identifier + number_literal)) ;) })) (if_statement "if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }" if (parenthesized_expression "(bVar3 == 0x2c)" ( (binary_expression "bVar3 == 0x2c" identifier == number_literal) )) (compound_statement "{\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }" { (expression_statement "pbVar2 = DAT_001e4780 + 1;" (assignment_expression "pbVar2 = DAT_001e4780 + 1" identifier = (binary_expression "DAT_001e4780 + 1" identifier + number_literal)) ;) (if_statement "if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }" if (parenthesized_expression "(DAT_001e4780[1] == 0x20)" ( (binary_expression "DAT_001e4780[1] == 0x20" (subscript_expression "DAT_001e4780[1]" identifier [ number_literal ]) == number_literal) )) (compound_statement "{\n        pbVar2 = DAT_001e4780 + 2;\n      }" { (expression_statement "pbVar2 = DAT_001e4780 + 2;" (assignment_expression "pbVar2 = DAT_001e4780 + 2" identifier = (binary_expression "DAT_001e4780 + 2" identifier + number_literal)) ;) })) (expression_statement "DAT_001e4780 = pbVar2;" (assignment_expression "DAT_001e4780 = pbVar2" identifier = identifier) ;) (expression_statement "bVar3 = FUN_001149a0(&local_60);" (assignment_expression "bVar3 = FUN_001149a0(&local_60)" identifier = (call_expression "FUN_001149a0(&local_60)" identifier (argument_list "(&local_60)" ( (pointer_expression "&local_60" & identifier) )))) ;) (expression_statement "iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);" (assignment_expression "iVar4 = strncasecmp(local_60,"BFD_RELOC_",10)" identifier = (call_expression "strncasecmp(local_60,"BFD_RELOC_",10)" identifier (argument_list "(local_60,"BFD_RELOC_",10)" ( identifier , (string_literal ""BFD_RELOC_"" " string_content ") , number_literal )))) ;) (if_statement "if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }" if (parenthesized_expression "(iVar4 == 0)" ( (binary_expression "iVar4 == 0" identifier == number_literal) )) (compound_statement "{\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }" { (expression_statement "uVar10 = 0;" (assignment_expression "uVar10 = 0" identifier = number_literal) ;) (expression_statement "__ptr[2] = 0;" (assignment_expression "__ptr[2] = 0" (subscript_expression "__ptr[2]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "ppuVar9 = &PTR_DAT_001602c0;" (assignment_expression "ppuVar9 = &PTR_DAT_001602c0" identifier = (pointer_expression "&PTR_DAT_001602c0" & identifier)) ;) (expression_statement "iVar4 = strcasecmp(local_60 + 10,"NONE");" (assignment_expression "iVar4 = strcasecmp(local_60 + 10,"NONE")" identifier = (call_expression "strcasecmp(local_60 + 10,"NONE")" identifier (argument_list "(local_60 + 10,"NONE")" ( (binary_expression "local_60 + 10" identifier + number_literal) , (string_literal ""NONE"" " string_content ") )))) ;) (while_statement "while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }" while (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) (compound_statement "{\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }" { (expression_statement "uVar10 = uVar10 + 1;" (assignment_expression "uVar10 = uVar10 + 1" identifier = (binary_expression "uVar10 + 1" identifier + number_literal)) ;) (expression_statement "ppuVar9 = ppuVar9 + 2;" (assignment_expression "ppuVar9 = ppuVar9 + 2" identifier = (binary_expression "ppuVar9 + 2" identifier + number_literal)) ;) (if_statement "if (uVar10 == 5) goto LAB_001213d8;" if (parenthesized_expression "(uVar10 == 5)" ( (binary_expression "uVar10 == 5" identifier == number_literal) )) (goto_statement "goto LAB_001213d8;" goto statement_identifier ;)) (expression_statement "iVar4 = strcasecmp(local_60 + 10,*ppuVar9);" (assignment_expression "iVar4 = strcasecmp(local_60 + 10,*ppuVar9)" identifier = (call_expression "strcasecmp(local_60 + 10,*ppuVar9)" identifier (argument_list "(local_60 + 10,*ppuVar9)" ( (binary_expression "local_60 + 10" identifier + number_literal) , (pointer_expression "*ppuVar9" * identifier) )))) ;) })) (expression_statement "uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);" (assignment_expression "uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4])" identifier = (call_expression "bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4])" identifier (argument_list "(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4])" ( identifier , (subscript_expression "(&DAT_001602c8)[(ulong)uVar10 * 4]" (parenthesized_expression "(&DAT_001602c8)" ( (pointer_expression "&DAT_001602c8" & identifier) )) [ (binary_expression "(ulong)uVar10 * 4" (cast_expression "(ulong)uVar10" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal) ]) )))) ;) (expression_statement "__ptr[2] = uVar6;" (assignment_expression "__ptr[2] = uVar6" (subscript_expression "__ptr[2]" identifier [ number_literal ]) = identifier) ;) }) (else_clause "else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }" else (compound_statement "{\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }" { (expression_statement "uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);" (assignment_expression "uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60)" identifier = (call_expression "bfd_reloc_name_lookup(DAT_001e4750,local_60)" identifier (argument_list "(DAT_001e4750,local_60)" ( identifier , identifier )))) ;) (expression_statement "__ptr[2] = uVar6;" (assignment_expression "__ptr[2] = uVar6" (subscript_expression "__ptr[2]" identifier [ number_literal ]) = identifier) ;) }))) (labeled_statement "LAB_001213d8:\n      pcVar8 = "unrecognized reloc type";" statement_identifier : (expression_statement "pcVar8 = "unrecognized reloc type";" (assignment_expression "pcVar8 = "unrecognized reloc type"" identifier = (string_literal ""unrecognized reloc type"" " string_content ")) ;)) (expression_statement "*DAT_001e4780 = bVar3;" (assignment_expression "*DAT_001e4780 = bVar3" (pointer_expression "*DAT_001e4780" * identifier) = identifier) ;) (if_statement "if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }" if (parenthesized_expression "(__ptr[2] != 0)" ( (binary_expression "__ptr[2] != 0" (subscript_expression "__ptr[2]" identifier [ number_literal ]) != number_literal) )) (compound_statement "{\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }" { (expression_statement "local_40 = 1;" (assignment_expression "local_40 = 1" identifier = number_literal) ;) (expression_statement "bVar3 = *DAT_001e4780;" (assignment_expression "bVar3 = *DAT_001e4780" identifier = (pointer_expression "*DAT_001e4780" * identifier)) ;) (if_statement "if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }" if (parenthesized_expression "(bVar3 == 0x22)" ( (binary_expression "bVar3 == 0x22" identifier == number_literal) )) (compound_statement "{\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }" { (expression_statement "bVar3 = DAT_001e4780[1];" (assignment_expression "bVar3 = DAT_001e4780[1]" identifier = (subscript_expression "DAT_001e4780[1]" identifier [ number_literal ])) ;) (expression_statement "DAT_001e4780 = DAT_001e4780 + 1;" (assignment_expression "DAT_001e4780 = DAT_001e4780 + 1" identifier = (binary_expression "DAT_001e4780 + 1" identifier + number_literal)) ;) })) (if_statement "if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }" if (parenthesized_expression "(bVar3 == 0x20)" ( (binary_expression "bVar3 == 0x20" identifier == number_literal) )) (compound_statement "{\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }" { (expression_statement "bVar3 = DAT_001e4780[1];" (assignment_expression "bVar3 = DAT_001e4780[1]" identifier = (subscript_expression "DAT_001e4780[1]" identifier [ number_literal ])) ;) (expression_statement "DAT_001e4780 = DAT_001e4780 + 1;" (assignment_expression "DAT_001e4780 = DAT_001e4780 + 1" identifier = (binary_expression "DAT_001e4780 + 1" identifier + number_literal)) ;) })) (if_statement "if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }" if (parenthesized_expression "(bVar3 == 0x2c)" ( (binary_expression "bVar3 == 0x2c" identifier == number_literal) )) (compound_statement "{\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }" { (expression_statement "DAT_001e4780 = DAT_001e4780 + 1;" (assignment_expression "DAT_001e4780 = DAT_001e4780 + 1" identifier = (binary_expression "DAT_001e4780 + 1" identifier + number_literal)) ;) (expression_statement "FUN_00114ae0(0,local_58,1);" (call_expression "FUN_00114ae0(0,local_58,1)" identifier (argument_list "(0,local_58,1)" ( number_literal , identifier , number_literal ))) ;) (switch_statement "switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }" switch (parenthesized_expression "(local_40)" ( identifier )) (compound_statement "{\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }" { (case_statement "case 0:" case number_literal :) (case_statement "case 5:" case number_literal :) (case_statement "case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;" case number_literal : (expression_statement "pcVar8 = "bad reloc expression";" (assignment_expression "pcVar8 = "bad reloc expression"" identifier = (string_literal ""bad reloc expression"" " string_content ")) ;) (goto_statement "goto LAB_001214f0;" goto statement_identifier ;)) (case_statement "case 1:\n            goto switchD_00121578_caseD_1;" case number_literal : (goto_statement "goto switchD_00121578_caseD_1;" goto statement_identifier ;)) (case_statement "case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;" case number_literal : (expression_statement "__ptr[3] = 0;" (assignment_expression "__ptr[3] = 0" (subscript_expression "__ptr[3]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "__ptr[4] = local_48;" (assignment_expression "__ptr[4] = local_48" (subscript_expression "__ptr[4]" identifier [ number_literal ]) = identifier) ;) (break_statement "break;" break ;)) (case_statement "case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;" case number_literal : (expression_statement "__ptr[3] = local_58[0];" (assignment_expression "__ptr[3] = local_58[0]" (subscript_expression "__ptr[3]" identifier [ number_literal ]) = (subscript_expression "local_58[0]" identifier [ number_literal ])) ;) (expression_statement "__ptr[4] = local_48;" (assignment_expression "__ptr[4] = local_48" (subscript_expression "__ptr[4]" identifier [ number_literal ]) = identifier) ;) (break_statement "break;" break ;)) (case_statement "default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;" default : (expression_statement "uVar6 = FUN_00113ee0(local_58);" (assignment_expression "uVar6 = FUN_00113ee0(local_58)" identifier = (call_expression "FUN_00113ee0(local_58)" identifier (argument_list "(local_58)" ( identifier )))) ;) (expression_statement "__ptr[4] = 0;" (assignment_expression "__ptr[4] = 0" (subscript_expression "__ptr[4]" identifier [ number_literal ]) = number_literal) ;) (expression_statement "__ptr[3] = uVar6;" (assignment_expression "__ptr[3] = uVar6" (subscript_expression "__ptr[3]" identifier [ number_literal ]) = identifier) ;)) })) }) (else_clause "else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }" else (compound_statement "{\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }" { (labeled_statement "switchD_00121578_caseD_1:\n          __ptr[3] = 0;" statement_identifier : (expression_statement "__ptr[3] = 0;" (assignment_expression "__ptr[3] = 0" (subscript_expression "__ptr[3]" identifier [ number_literal ]) = number_literal) ;)) (expression_statement "__ptr[4] = 0;" (assignment_expression "__ptr[4] = 0" (subscript_expression "__ptr[4]" identifier [ number_literal ]) = number_literal) ;) }))) (expression_statement "uVar6 = FUN_00118700(__ptr + 8);" (assignment_expression "uVar6 = FUN_00118700(__ptr + 8)" identifier = (call_expression "FUN_00118700(__ptr + 8)" identifier (argument_list "(__ptr + 8)" ( (binary_expression "__ptr + 8" identifier + number_literal) )))) ;) (expression_statement "__ptr[7] = uVar6;" (assignment_expression "__ptr[7] = uVar6" (subscript_expression "__ptr[7]" identifier [ number_literal ]) = identifier) ;) (expression_statement "*__ptr = DAT_001e4990;" (assignment_expression "*__ptr = DAT_001e4990" (pointer_expression "*__ptr" * identifier) = identifier) ;) (expression_statement "DAT_001e4990 = __ptr;" (assignment_expression "DAT_001e4990 = __ptr" identifier = identifier) ;) (expression_statement "FUN_0011ffa0();" (call_expression "FUN_0011ffa0()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto joined_r0x0012147f;" goto statement_identifier ;) })) }) (else_clause "else {\n      pcVar8 = "missing reloc type";\n    }" else (compound_statement "{\n      pcVar8 = "missing reloc type";\n    }" { (expression_statement "pcVar8 = "missing reloc type";" (assignment_expression "pcVar8 = "missing reloc type"" identifier = (string_literal ""missing reloc type"" " string_content ")) ;) }))) }))) (labeled_statement "LAB_001214f0:\n  uVar6 = dcgettext(0,pcVar8,5);" statement_identifier : (expression_statement "uVar6 = dcgettext(0,pcVar8,5);" (assignment_expression "uVar6 = dcgettext(0,pcVar8,5)" identifier = (call_expression "dcgettext(0,pcVar8,5)" identifier (argument_list "(0,pcVar8,5)" ( number_literal , identifier , number_literal )))) ;)) (expression_statement "FUN_0011da70(uVar6);" (call_expression "FUN_0011da70(uVar6)" identifier (argument_list "(uVar6)" ( identifier ))) ;) (expression_statement "FUN_0011fd80();" (call_expression "FUN_0011fd80()" identifier (argument_list "()" ( ))) ;) (expression_statement "free(__ptr);" (call_expression "free(__ptr)" identifier (argument_list "(__ptr)" ( identifier ))) ;) (labeled_statement "joined_r0x0012147f:\n  if (DAT_001e4650 == 0) {\n    return;\n  }" statement_identifier : (if_statement "if (DAT_001e4650 == 0) {\n    return;\n  }" if (parenthesized_expression "(DAT_001e4650 == 0)" ( (binary_expression "DAT_001e4650 == 0" identifier == number_literal) )) (compound_statement "{\n    return;\n  }" { (return_statement "return;" return ;) }))) (expression_statement "FUN_0011f810(pbVar11,(int)(char)bVar7);" (call_expression "FUN_0011f810(pbVar11,(int)(char)bVar7)" identifier (argument_list "(pbVar11,(int)(char)bVar7)" ( identifier , (cast_expression "(int)(char)bVar7" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar7" ( (type_descriptor "char" primitive_type) ) identifier)) ))) ;) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * (pointer_declarator * IDENT)) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( LIT ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ])) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ IDENT ])) ;) })) (expression_statement (assignment_expression (pointer_expression * IDENT) = LIT) ;) }))) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT , LIT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression LIT << (parenthesized_expression ( (binary_expression IDENT & LIT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;)) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression & IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (string_literal " string_content ") )))) ;) (while_statement while (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) , (pointer_expression * IDENT) )))) ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , (subscript_expression (parenthesized_expression ( (pointer_expression & IDENT) )) [ (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ]) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;)) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT , LIT ))) ;) (switch_statement switch (parenthesized_expression ( IDENT )) (compound_statement { (case_statement case LIT :) (case_statement case LIT :) (case_statement case LIT : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) (goto_statement goto statement_identifier ;)) (case_statement case LIT : (goto_statement goto statement_identifier ;)) (case_statement case LIT : (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (break_statement break ;)) (case_statement case LIT : (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = (subscript_expression IDENT [ LIT ])) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (break_statement break ;)) (case_statement default : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;)) })) }) (else_clause else (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;)) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) }))) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (binary_expression IDENT + LIT) )))) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (assignment_expression (pointer_expression * IDENT) = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (goto_statement goto statement_identifier ;) })) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) }))) }))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , IDENT , LIT )))) ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (return_statement return ;) }))) (expression_statement (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ;) (return_statement return ;) })))
(function_definition "void FUN_00121250(void)\n\n{\n  char cVar1;\n  byte *pbVar2;\n  byte bVar3;\n  int iVar4;\n  undefined8 *__ptr;\n  ulong uVar5;\n  undefined8 uVar6;\n  byte bVar7;\n  char *pcVar8;\n  undefined **ppuVar9;\n  uint uVar10;\n  byte *pbVar11;\n  char *local_60;\n  undefined8 local_58 [2];\n  long local_48;\n  byte local_40;\n  \n  __ptr = (undefined8 *)xmalloc(0x48);\n  if (DAT_001e4650 == 0) {\n    bVar7 = 0;\n    pbVar11 = (byte *)0x0;\n  }\n  else {\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }\n  FUN_00114ae0(0,local_58,1);\n  if (local_40 < 7) {\n    uVar5 = 1L << (local_40 & 0x3f);\n    if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }\n    pcVar8 = "missing or bad offset expression";\n  }\n  else {\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }\nLAB_001214f0:\n  uVar6 = dcgettext(0,pcVar8,5);\n  FUN_0011da70(uVar6);\n  FUN_0011fd80();\n  free(__ptr);\njoined_r0x0012147f:\n  if (DAT_001e4650 == 0) {\n    return;\n  }\n  FUN_0011f810(pbVar11,(int)(char)bVar7);\n  return;\n}" (primitive_type "void") (function_declarator "FUN_00121250(void)" (identifier "FUN_00121250") (parameter_list "(void)" (( "(") (parameter_declaration "void" (primitive_type "void")) () ")"))) (compound_statement "{\n  char cVar1;\n  byte *pbVar2;\n  byte bVar3;\n  int iVar4;\n  undefined8 *__ptr;\n  ulong uVar5;\n  undefined8 uVar6;\n  byte bVar7;\n  char *pcVar8;\n  undefined **ppuVar9;\n  uint uVar10;\n  byte *pbVar11;\n  char *local_60;\n  undefined8 local_58 [2];\n  long local_48;\n  byte local_40;\n  \n  __ptr = (undefined8 *)xmalloc(0x48);\n  if (DAT_001e4650 == 0) {\n    bVar7 = 0;\n    pbVar11 = (byte *)0x0;\n  }\n  else {\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }\n  FUN_00114ae0(0,local_58,1);\n  if (local_40 < 7) {\n    uVar5 = 1L << (local_40 & 0x3f);\n    if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }\n    pcVar8 = "missing or bad offset expression";\n  }\n  else {\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }\nLAB_001214f0:\n  uVar6 = dcgettext(0,pcVar8,5);\n  FUN_0011da70(uVar6);\n  FUN_0011fd80();\n  free(__ptr);\njoined_r0x0012147f:\n  if (DAT_001e4650 == 0) {\n    return;\n  }\n  FUN_0011f810(pbVar11,(int)(char)bVar7);\n  return;\n}" ({ "{") (declaration "char cVar1;" (primitive_type "char") (identifier "cVar1") (; ";")) (declaration "byte *pbVar2;" (type_identifier "byte") (pointer_declarator "*pbVar2" (* "*") (identifier "pbVar2")) (; ";")) (declaration "byte bVar3;" (type_identifier "byte") (identifier "bVar3") (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (declaration "undefined8 *__ptr;" (type_identifier "undefined8") (pointer_declarator "*__ptr" (* "*") (identifier "__ptr")) (; ";")) (declaration "ulong uVar5;" (type_identifier "ulong") (identifier "uVar5") (; ";")) (declaration "undefined8 uVar6;" (type_identifier "undefined8") (identifier "uVar6") (; ";")) (declaration "byte bVar7;" (type_identifier "byte") (identifier "bVar7") (; ";")) (declaration "char *pcVar8;" (primitive_type "char") (pointer_declarator "*pcVar8" (* "*") (identifier "pcVar8")) (; ";")) (declaration "undefined **ppuVar9;" (type_identifier "undefined") (pointer_declarator "**ppuVar9" (* "*") (pointer_declarator "*ppuVar9" (* "*") (identifier "ppuVar9"))) (; ";")) (declaration "uint uVar10;" (type_identifier "uint") (identifier "uVar10") (; ";")) (declaration "byte *pbVar11;" (type_identifier "byte") (pointer_declarator "*pbVar11" (* "*") (identifier "pbVar11")) (; ";")) (declaration "char *local_60;" (primitive_type "char") (pointer_declarator "*local_60" (* "*") (identifier "local_60")) (; ";")) (declaration "undefined8 local_58 [2];" (type_identifier "undefined8") (array_declarator "local_58 [2]" (identifier "local_58") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "long local_48;" (sized_type_specifier "long" (long "long")) (identifier "local_48") (; ";")) (declaration "byte local_40;" (type_identifier "byte") (identifier "local_40") (; ";")) (expression_statement "__ptr = (undefined8 *)xmalloc(0x48);" (assignment_expression "__ptr = (undefined8 *)xmalloc(0x48)" (identifier "__ptr") (= "=") (cast_expression "(undefined8 *)xmalloc(0x48)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xmalloc(0x48)" (identifier "xmalloc") (argument_list "(0x48)" (( "(") (number_literal "0x48") () ")"))))) (; ";")) (if_statement "if (DAT_001e4650 == 0) {\n    bVar7 = 0;\n    pbVar11 = (byte *)0x0;\n  }\n  else {\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }" (if "if") (parenthesized_expression "(DAT_001e4650 == 0)" (( "(") (binary_expression "DAT_001e4650 == 0" (identifier "DAT_001e4650") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    bVar7 = 0;\n    pbVar11 = (byte *)0x0;\n  }" ({ "{") (expression_statement "bVar7 = 0;" (assignment_expression "bVar7 = 0" (identifier "bVar7") (= "=") (number_literal "0")) (; ";")) (expression_statement "pbVar11 = (byte *)0x0;" (assignment_expression "pbVar11 = (byte *)0x0" (identifier "pbVar11") (= "=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) (; ";")) (} "}")) (else_clause "else {\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }" (else "else") (compound_statement "{\n    bVar7 = *DAT_001e4780;\n    cVar1 = (&DAT_001da4e0)[bVar7];\n    pbVar11 = DAT_001e4780;\n    while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }\n    *pbVar11 = 0;\n  }" ({ "{") (expression_statement "bVar7 = *DAT_001e4780;" (assignment_expression "bVar7 = *DAT_001e4780" (identifier "bVar7") (= "=") (pointer_expression "*DAT_001e4780" (* "*") (identifier "DAT_001e4780"))) (; ";")) (expression_statement "cVar1 = (&DAT_001da4e0)[bVar7];" (assignment_expression "cVar1 = (&DAT_001da4e0)[bVar7]" (identifier "cVar1") (= "=") (subscript_expression "(&DAT_001da4e0)[bVar7]" (parenthesized_expression "(&DAT_001da4e0)" (( "(") (pointer_expression "&DAT_001da4e0" (& "&") (identifier "DAT_001da4e0")) () ")")) ([ "[") (identifier "bVar7") (] "]"))) (; ";")) (expression_statement "pbVar11 = DAT_001e4780;" (assignment_expression "pbVar11 = DAT_001e4780" (identifier "pbVar11") (= "=") (identifier "DAT_001e4780")) (; ";")) (while_statement "while (cVar1 == '\0') {\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }" (while "while") (parenthesized_expression "(cVar1 == '\0')" (( "(") (binary_expression "cVar1 == '\0'" (identifier "cVar1") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      pbVar11 = pbVar11 + 1;\n      bVar7 = *pbVar11;\n      cVar1 = (&DAT_001da4e0)[bVar7];\n    }" ({ "{") (expression_statement "pbVar11 = pbVar11 + 1;" (assignment_expression "pbVar11 = pbVar11 + 1" (identifier "pbVar11") (= "=") (binary_expression "pbVar11 + 1" (identifier "pbVar11") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar7 = *pbVar11;" (assignment_expression "bVar7 = *pbVar11" (identifier "bVar7") (= "=") (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11"))) (; ";")) (expression_statement "cVar1 = (&DAT_001da4e0)[bVar7];" (assignment_expression "cVar1 = (&DAT_001da4e0)[bVar7]" (identifier "cVar1") (= "=") (subscript_expression "(&DAT_001da4e0)[bVar7]" (parenthesized_expression "(&DAT_001da4e0)" (( "(") (pointer_expression "&DAT_001da4e0" (& "&") (identifier "DAT_001da4e0")) () ")")) ([ "[") (identifier "bVar7") (] "]"))) (; ";")) (} "}"))) (expression_statement "*pbVar11 = 0;" (assignment_expression "*pbVar11 = 0" (pointer_expression "*pbVar11" (* "*") (identifier "pbVar11")) (= "=") (number_literal "0")) (; ";")) (} "}")))) (expression_statement "FUN_00114ae0(0,local_58,1);" (call_expression "FUN_00114ae0(0,local_58,1)" (identifier "FUN_00114ae0") (argument_list "(0,local_58,1)" (( "(") (number_literal "0") (, ",") (identifier "local_58") (, ",") (number_literal "1") () ")"))) (; ";")) (if_statement "if (local_40 < 7) {\n    uVar5 = 1L << (local_40 & 0x3f);\n    if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }\n    pcVar8 = "missing or bad offset expression";\n  }\n  else {\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }" (if "if") (parenthesized_expression "(local_40 < 7)" (( "(") (binary_expression "local_40 < 7" (identifier "local_40") (< "<") (number_literal "7")) () ")")) (compound_statement "{\n    uVar5 = 1L << (local_40 & 0x3f);\n    if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }\n    pcVar8 = "missing or bad offset expression";\n  }" ({ "{") (expression_statement "uVar5 = 1L << (local_40 & 0x3f);" (assignment_expression "uVar5 = 1L << (local_40 & 0x3f)" (identifier "uVar5") (= "=") (binary_expression "1L << (local_40 & 0x3f)" (number_literal "1L") (<< "<<") (parenthesized_expression "(local_40 & 0x3f)" (( "(") (binary_expression "local_40 & 0x3f" (identifier "local_40") (& "&") (number_literal "0x3f")) () ")")))) (; ";")) (if_statement "if ((uVar5 & 99) == 0) {\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }" (if "if") (parenthesized_expression "((uVar5 & 99) == 0)" (( "(") (binary_expression "(uVar5 & 99) == 0" (parenthesized_expression "(uVar5 & 99)" (( "(") (binary_expression "uVar5 & 99" (identifier "uVar5") (& "&") (number_literal "99")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }\n      if (local_48 != 0) goto LAB_001212eb;\n      __ptr[1] = local_58[0];\n      goto LAB_001212f7;\n    }" ({ "{") (if_statement "if ((uVar5 & 8) == 0) {\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }" (if "if") (parenthesized_expression "((uVar5 & 8) == 0)" (( "(") (binary_expression "(uVar5 & 8) == 0" (parenthesized_expression "(uVar5 & 8)" (( "(") (binary_expression "uVar5 & 8" (identifier "uVar5") (& "&") (number_literal "8")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        if ((uVar5 & 4) == 0) goto LAB_001212eb;\n        local_58[0] = FUN_001279c0(DAT_001e44a8);\n        local_40 = 3;\n      }" ({ "{") (if_statement "if ((uVar5 & 4) == 0) goto LAB_001212eb;" (if "if") (parenthesized_expression "((uVar5 & 4) == 0)" (( "(") (binary_expression "(uVar5 & 4) == 0" (parenthesized_expression "(uVar5 & 4)" (( "(") (binary_expression "uVar5 & 4" (identifier "uVar5") (& "&") (number_literal "4")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_001212eb;" (goto "goto") (statement_identifier "LAB_001212eb") (; ";"))) (expression_statement "local_58[0] = FUN_001279c0(DAT_001e44a8);" (assignment_expression "local_58[0] = FUN_001279c0(DAT_001e44a8)" (subscript_expression "local_58[0]" (identifier "local_58") ([ "[") (number_literal "0") (] "]")) (= "=") (call_expression "FUN_001279c0(DAT_001e44a8)" (identifier "FUN_001279c0") (argument_list "(DAT_001e44a8)" (( "(") (identifier "DAT_001e44a8") () ")")))) (; ";")) (expression_statement "local_40 = 3;" (assignment_expression "local_40 = 3" (identifier "local_40") (= "=") (number_literal "3")) (; ";")) (} "}"))) (if_statement "if (local_48 != 0) goto LAB_001212eb;" (if "if") (parenthesized_expression "(local_48 != 0)" (( "(") (binary_expression "local_48 != 0" (identifier "local_48") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_001212eb;" (goto "goto") (statement_identifier "LAB_001212eb") (; ";"))) (expression_statement "__ptr[1] = local_58[0];" (assignment_expression "__ptr[1] = local_58[0]" (subscript_expression "__ptr[1]" (identifier "__ptr") ([ "[") (number_literal "1") (] "]")) (= "=") (subscript_expression "local_58[0]" (identifier "local_58") ([ "[") (number_literal "0") (] "]"))) (; ";")) (goto_statement "goto LAB_001212f7;" (goto "goto") (statement_identifier "LAB_001212f7") (; ";")) (} "}"))) (expression_statement "pcVar8 = "missing or bad offset expression";" (assignment_expression "pcVar8 = "missing or bad offset expression"" (identifier "pcVar8") (= "=") (string_literal ""missing or bad offset expression"" (" """) (string_content "missing or bad offset expression") (" """))) (; ";")) (} "}")) (else_clause "else {\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }" (else "else") (compound_statement "{\nLAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);\n    __ptr[1] = uVar6;\nLAB_001212f7:\n    bVar3 = *DAT_001e4780;\n    if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }\n    if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }\n  }" ({ "{") (labeled_statement "LAB_001212eb:\n    uVar6 = FUN_00113ee0(local_58);" (statement_identifier "LAB_001212eb") (: ":") (expression_statement "uVar6 = FUN_00113ee0(local_58);" (assignment_expression "uVar6 = FUN_00113ee0(local_58)" (identifier "uVar6") (= "=") (call_expression "FUN_00113ee0(local_58)" (identifier "FUN_00113ee0") (argument_list "(local_58)" (( "(") (identifier "local_58") () ")")))) (; ";"))) (expression_statement "__ptr[1] = uVar6;" (assignment_expression "__ptr[1] = uVar6" (subscript_expression "__ptr[1]" (identifier "__ptr") ([ "[") (number_literal "1") (] "]")) (= "=") (identifier "uVar6")) (; ";")) (labeled_statement "LAB_001212f7:\n    bVar3 = *DAT_001e4780;" (statement_identifier "LAB_001212f7") (: ":") (expression_statement "bVar3 = *DAT_001e4780;" (assignment_expression "bVar3 = *DAT_001e4780" (identifier "bVar3") (= "=") (pointer_expression "*DAT_001e4780" (* "*") (identifier "DAT_001e4780"))) (; ";"))) (if_statement "if (bVar3 == 0x20) {\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }" (if "if") (parenthesized_expression "(bVar3 == 0x20)" (( "(") (binary_expression "bVar3 == 0x20" (identifier "bVar3") (== "==") (number_literal "0x20")) () ")")) (compound_statement "{\n      bVar3 = DAT_001e4780[1];\n      DAT_001e4780 = DAT_001e4780 + 1;\n    }" ({ "{") (expression_statement "bVar3 = DAT_001e4780[1];" (assignment_expression "bVar3 = DAT_001e4780[1]" (identifier "bVar3") (= "=") (subscript_expression "DAT_001e4780[1]" (identifier "DAT_001e4780") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "DAT_001e4780 = DAT_001e4780 + 1;" (assignment_expression "DAT_001e4780 = DAT_001e4780 + 1" (identifier "DAT_001e4780") (= "=") (binary_expression "DAT_001e4780 + 1" (identifier "DAT_001e4780") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (if_statement "if (bVar3 == 0x2c) {\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }\n    else {\n      pcVar8 = "missing reloc type";\n    }" (if "if") (parenthesized_expression "(bVar3 == 0x2c)" (( "(") (binary_expression "bVar3 == 0x2c" (identifier "bVar3") (== "==") (number_literal "0x2c")) () ")")) (compound_statement "{\n      pbVar2 = DAT_001e4780 + 1;\n      if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }\n      DAT_001e4780 = pbVar2;\n      bVar3 = FUN_001149a0(&local_60);\n      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);\n      if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }\nLAB_001213d8:\n      pcVar8 = "unrecognized reloc type";\n      *DAT_001e4780 = bVar3;\n      if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }\n    }" ({ "{") (expression_statement "pbVar2 = DAT_001e4780 + 1;" (assignment_expression "pbVar2 = DAT_001e4780 + 1" (identifier "pbVar2") (= "=") (binary_expression "DAT_001e4780 + 1" (identifier "DAT_001e4780") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (DAT_001e4780[1] == 0x20) {\n        pbVar2 = DAT_001e4780 + 2;\n      }" (if "if") (parenthesized_expression "(DAT_001e4780[1] == 0x20)" (( "(") (binary_expression "DAT_001e4780[1] == 0x20" (subscript_expression "DAT_001e4780[1]" (identifier "DAT_001e4780") ([ "[") (number_literal "1") (] "]")) (== "==") (number_literal "0x20")) () ")")) (compound_statement "{\n        pbVar2 = DAT_001e4780 + 2;\n      }" ({ "{") (expression_statement "pbVar2 = DAT_001e4780 + 2;" (assignment_expression "pbVar2 = DAT_001e4780 + 2" (identifier "pbVar2") (= "=") (binary_expression "DAT_001e4780 + 2" (identifier "DAT_001e4780") (+ "+") (number_literal "2"))) (; ";")) (} "}"))) (expression_statement "DAT_001e4780 = pbVar2;" (assignment_expression "DAT_001e4780 = pbVar2" (identifier "DAT_001e4780") (= "=") (identifier "pbVar2")) (; ";")) (expression_statement "bVar3 = FUN_001149a0(&local_60);" (assignment_expression "bVar3 = FUN_001149a0(&local_60)" (identifier "bVar3") (= "=") (call_expression "FUN_001149a0(&local_60)" (identifier "FUN_001149a0") (argument_list "(&local_60)" (( "(") (pointer_expression "&local_60" (& "&") (identifier "local_60")) () ")")))) (; ";")) (expression_statement "iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);" (assignment_expression "iVar4 = strncasecmp(local_60,"BFD_RELOC_",10)" (identifier "iVar4") (= "=") (call_expression "strncasecmp(local_60,"BFD_RELOC_",10)" (identifier "strncasecmp") (argument_list "(local_60,"BFD_RELOC_",10)" (( "(") (identifier "local_60") (, ",") (string_literal ""BFD_RELOC_"" (" """) (string_content "BFD_RELOC_") (" """)) (, ",") (number_literal "10") () ")")))) (; ";")) (if_statement "if (iVar4 == 0) {\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }\n      else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }" (if "if") (parenthesized_expression "(iVar4 == 0)" (( "(") (binary_expression "iVar4 == 0" (identifier "iVar4") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n        uVar10 = 0;\n        __ptr[2] = 0;\n        ppuVar9 = &PTR_DAT_001602c0;\n        iVar4 = strcasecmp(local_60 + 10,"NONE");\n        while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }\n        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);\n        __ptr[2] = uVar6;\n      }" ({ "{") (expression_statement "uVar10 = 0;" (assignment_expression "uVar10 = 0" (identifier "uVar10") (= "=") (number_literal "0")) (; ";")) (expression_statement "__ptr[2] = 0;" (assignment_expression "__ptr[2] = 0" (subscript_expression "__ptr[2]" (identifier "__ptr") ([ "[") (number_literal "2") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "ppuVar9 = &PTR_DAT_001602c0;" (assignment_expression "ppuVar9 = &PTR_DAT_001602c0" (identifier "ppuVar9") (= "=") (pointer_expression "&PTR_DAT_001602c0" (& "&") (identifier "PTR_DAT_001602c0"))) (; ";")) (expression_statement "iVar4 = strcasecmp(local_60 + 10,"NONE");" (assignment_expression "iVar4 = strcasecmp(local_60 + 10,"NONE")" (identifier "iVar4") (= "=") (call_expression "strcasecmp(local_60 + 10,"NONE")" (identifier "strcasecmp") (argument_list "(local_60 + 10,"NONE")" (( "(") (binary_expression "local_60 + 10" (identifier "local_60") (+ "+") (number_literal "10")) (, ",") (string_literal ""NONE"" (" """) (string_content "NONE") (" """)) () ")")))) (; ";")) (while_statement "while (iVar4 != 0) {\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }" (while "while") (parenthesized_expression "(iVar4 != 0)" (( "(") (binary_expression "iVar4 != 0" (identifier "iVar4") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          uVar10 = uVar10 + 1;\n          ppuVar9 = ppuVar9 + 2;\n          if (uVar10 == 5) goto LAB_001213d8;\n          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);\n        }" ({ "{") (expression_statement "uVar10 = uVar10 + 1;" (assignment_expression "uVar10 = uVar10 + 1" (identifier "uVar10") (= "=") (binary_expression "uVar10 + 1" (identifier "uVar10") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "ppuVar9 = ppuVar9 + 2;" (assignment_expression "ppuVar9 = ppuVar9 + 2" (identifier "ppuVar9") (= "=") (binary_expression "ppuVar9 + 2" (identifier "ppuVar9") (+ "+") (number_literal "2"))) (; ";")) (if_statement "if (uVar10 == 5) goto LAB_001213d8;" (if "if") (parenthesized_expression "(uVar10 == 5)" (( "(") (binary_expression "uVar10 == 5" (identifier "uVar10") (== "==") (number_literal "5")) () ")")) (goto_statement "goto LAB_001213d8;" (goto "goto") (statement_identifier "LAB_001213d8") (; ";"))) (expression_statement "iVar4 = strcasecmp(local_60 + 10,*ppuVar9);" (assignment_expression "iVar4 = strcasecmp(local_60 + 10,*ppuVar9)" (identifier "iVar4") (= "=") (call_expression "strcasecmp(local_60 + 10,*ppuVar9)" (identifier "strcasecmp") (argument_list "(local_60 + 10,*ppuVar9)" (( "(") (binary_expression "local_60 + 10" (identifier "local_60") (+ "+") (number_literal "10")) (, ",") (pointer_expression "*ppuVar9" (* "*") (identifier "ppuVar9")) () ")")))) (; ";")) (} "}"))) (expression_statement "uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);" (assignment_expression "uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4])" (identifier "uVar6") (= "=") (call_expression "bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4])" (identifier "bfd_reloc_type_lookup") (argument_list "(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4])" (( "(") (identifier "DAT_001e4750") (, ",") (subscript_expression "(&DAT_001602c8)[(ulong)uVar10 * 4]" (parenthesized_expression "(&DAT_001602c8)" (( "(") (pointer_expression "&DAT_001602c8" (& "&") (identifier "DAT_001602c8")) () ")")) ([ "[") (binary_expression "(ulong)uVar10 * 4" (cast_expression "(ulong)uVar10" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar10")) (* "*") (number_literal "4")) (] "]")) () ")")))) (; ";")) (expression_statement "__ptr[2] = uVar6;" (assignment_expression "__ptr[2] = uVar6" (subscript_expression "__ptr[2]" (identifier "__ptr") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "uVar6")) (; ";")) (} "}")) (else_clause "else {\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }" (else "else") (compound_statement "{\n        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);\n        __ptr[2] = uVar6;\n      }" ({ "{") (expression_statement "uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);" (assignment_expression "uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60)" (identifier "uVar6") (= "=") (call_expression "bfd_reloc_name_lookup(DAT_001e4750,local_60)" (identifier "bfd_reloc_name_lookup") (argument_list "(DAT_001e4750,local_60)" (( "(") (identifier "DAT_001e4750") (, ",") (identifier "local_60") () ")")))) (; ";")) (expression_statement "__ptr[2] = uVar6;" (assignment_expression "__ptr[2] = uVar6" (subscript_expression "__ptr[2]" (identifier "__ptr") ([ "[") (number_literal "2") (] "]")) (= "=") (identifier "uVar6")) (; ";")) (} "}")))) (labeled_statement "LAB_001213d8:\n      pcVar8 = "unrecognized reloc type";" (statement_identifier "LAB_001213d8") (: ":") (expression_statement "pcVar8 = "unrecognized reloc type";" (assignment_expression "pcVar8 = "unrecognized reloc type"" (identifier "pcVar8") (= "=") (string_literal ""unrecognized reloc type"" (" """) (string_content "unrecognized reloc type") (" """))) (; ";"))) (expression_statement "*DAT_001e4780 = bVar3;" (assignment_expression "*DAT_001e4780 = bVar3" (pointer_expression "*DAT_001e4780" (* "*") (identifier "DAT_001e4780")) (= "=") (identifier "bVar3")) (; ";")) (if_statement "if (__ptr[2] != 0) {\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }" (if "if") (parenthesized_expression "(__ptr[2] != 0)" (( "(") (binary_expression "__ptr[2] != 0" (subscript_expression "__ptr[2]" (identifier "__ptr") ([ "[") (number_literal "2") (] "]")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        local_40 = 1;\n        bVar3 = *DAT_001e4780;\n        if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }\n        if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }\n        uVar6 = FUN_00118700(__ptr + 8);\n        __ptr[7] = uVar6;\n        *__ptr = DAT_001e4990;\n        DAT_001e4990 = __ptr;\n        FUN_0011ffa0();\n        goto joined_r0x0012147f;\n      }" ({ "{") (expression_statement "local_40 = 1;" (assignment_expression "local_40 = 1" (identifier "local_40") (= "=") (number_literal "1")) (; ";")) (expression_statement "bVar3 = *DAT_001e4780;" (assignment_expression "bVar3 = *DAT_001e4780" (identifier "bVar3") (= "=") (pointer_expression "*DAT_001e4780" (* "*") (identifier "DAT_001e4780"))) (; ";")) (if_statement "if (bVar3 == 0x22) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }" (if "if") (parenthesized_expression "(bVar3 == 0x22)" (( "(") (binary_expression "bVar3 == 0x22" (identifier "bVar3") (== "==") (number_literal "0x22")) () ")")) (compound_statement "{\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }" ({ "{") (expression_statement "bVar3 = DAT_001e4780[1];" (assignment_expression "bVar3 = DAT_001e4780[1]" (identifier "bVar3") (= "=") (subscript_expression "DAT_001e4780[1]" (identifier "DAT_001e4780") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "DAT_001e4780 = DAT_001e4780 + 1;" (assignment_expression "DAT_001e4780 = DAT_001e4780 + 1" (identifier "DAT_001e4780") (= "=") (binary_expression "DAT_001e4780 + 1" (identifier "DAT_001e4780") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (if_statement "if (bVar3 == 0x20) {\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }" (if "if") (parenthesized_expression "(bVar3 == 0x20)" (( "(") (binary_expression "bVar3 == 0x20" (identifier "bVar3") (== "==") (number_literal "0x20")) () ")")) (compound_statement "{\n          bVar3 = DAT_001e4780[1];\n          DAT_001e4780 = DAT_001e4780 + 1;\n        }" ({ "{") (expression_statement "bVar3 = DAT_001e4780[1];" (assignment_expression "bVar3 = DAT_001e4780[1]" (identifier "bVar3") (= "=") (subscript_expression "DAT_001e4780[1]" (identifier "DAT_001e4780") ([ "[") (number_literal "1") (] "]"))) (; ";")) (expression_statement "DAT_001e4780 = DAT_001e4780 + 1;" (assignment_expression "DAT_001e4780 = DAT_001e4780 + 1" (identifier "DAT_001e4780") (= "=") (binary_expression "DAT_001e4780 + 1" (identifier "DAT_001e4780") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (if_statement "if (bVar3 == 0x2c) {\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }\n        else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }" (if "if") (parenthesized_expression "(bVar3 == 0x2c)" (( "(") (binary_expression "bVar3 == 0x2c" (identifier "bVar3") (== "==") (number_literal "0x2c")) () ")")) (compound_statement "{\n          DAT_001e4780 = DAT_001e4780 + 1;\n          FUN_00114ae0(0,local_58,1);\n          switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }\n        }" ({ "{") (expression_statement "DAT_001e4780 = DAT_001e4780 + 1;" (assignment_expression "DAT_001e4780 = DAT_001e4780 + 1" (identifier "DAT_001e4780") (= "=") (binary_expression "DAT_001e4780 + 1" (identifier "DAT_001e4780") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "FUN_00114ae0(0,local_58,1);" (call_expression "FUN_00114ae0(0,local_58,1)" (identifier "FUN_00114ae0") (argument_list "(0,local_58,1)" (( "(") (number_literal "0") (, ",") (identifier "local_58") (, ",") (number_literal "1") () ")"))) (; ";")) (switch_statement "switch(local_40) {\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }" (switch "switch") (parenthesized_expression "(local_40)" (( "(") (identifier "local_40") () ")")) (compound_statement "{\n          case 0:\n          case 5:\n          case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;\n          case 1:\n            goto switchD_00121578_caseD_1;\n          case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;\n          case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;\n          default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;\n          }" ({ "{") (case_statement "case 0:" (case "case") (number_literal "0") (: ":")) (case_statement "case 5:" (case "case") (number_literal "5") (: ":")) (case_statement "case 6:\n            pcVar8 = "bad reloc expression";\n            goto LAB_001214f0;" (case "case") (number_literal "6") (: ":") (expression_statement "pcVar8 = "bad reloc expression";" (assignment_expression "pcVar8 = "bad reloc expression"" (identifier "pcVar8") (= "=") (string_literal ""bad reloc expression"" (" """) (string_content "bad reloc expression") (" """))) (; ";")) (goto_statement "goto LAB_001214f0;" (goto "goto") (statement_identifier "LAB_001214f0") (; ";"))) (case_statement "case 1:\n            goto switchD_00121578_caseD_1;" (case "case") (number_literal "1") (: ":") (goto_statement "goto switchD_00121578_caseD_1;" (goto "goto") (statement_identifier "switchD_00121578_caseD_1") (; ";"))) (case_statement "case 2:\n            __ptr[3] = 0;\n            __ptr[4] = local_48;\n            break;" (case "case") (number_literal "2") (: ":") (expression_statement "__ptr[3] = 0;" (assignment_expression "__ptr[3] = 0" (subscript_expression "__ptr[3]" (identifier "__ptr") ([ "[") (number_literal "3") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "__ptr[4] = local_48;" (assignment_expression "__ptr[4] = local_48" (subscript_expression "__ptr[4]" (identifier "__ptr") ([ "[") (number_literal "4") (] "]")) (= "=") (identifier "local_48")) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "case 3:\n            __ptr[3] = local_58[0];\n            __ptr[4] = local_48;\n            break;" (case "case") (number_literal "3") (: ":") (expression_statement "__ptr[3] = local_58[0];" (assignment_expression "__ptr[3] = local_58[0]" (subscript_expression "__ptr[3]" (identifier "__ptr") ([ "[") (number_literal "3") (] "]")) (= "=") (subscript_expression "local_58[0]" (identifier "local_58") ([ "[") (number_literal "0") (] "]"))) (; ";")) (expression_statement "__ptr[4] = local_48;" (assignment_expression "__ptr[4] = local_48" (subscript_expression "__ptr[4]" (identifier "__ptr") ([ "[") (number_literal "4") (] "]")) (= "=") (identifier "local_48")) (; ";")) (break_statement "break;" (break "break") (; ";"))) (case_statement "default:\n            uVar6 = FUN_00113ee0(local_58);\n            __ptr[4] = 0;\n            __ptr[3] = uVar6;" (default "default") (: ":") (expression_statement "uVar6 = FUN_00113ee0(local_58);" (assignment_expression "uVar6 = FUN_00113ee0(local_58)" (identifier "uVar6") (= "=") (call_expression "FUN_00113ee0(local_58)" (identifier "FUN_00113ee0") (argument_list "(local_58)" (( "(") (identifier "local_58") () ")")))) (; ";")) (expression_statement "__ptr[4] = 0;" (assignment_expression "__ptr[4] = 0" (subscript_expression "__ptr[4]" (identifier "__ptr") ([ "[") (number_literal "4") (] "]")) (= "=") (number_literal "0")) (; ";")) (expression_statement "__ptr[3] = uVar6;" (assignment_expression "__ptr[3] = uVar6" (subscript_expression "__ptr[3]" (identifier "__ptr") ([ "[") (number_literal "3") (] "]")) (= "=") (identifier "uVar6")) (; ";"))) (} "}"))) (} "}")) (else_clause "else {\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }" (else "else") (compound_statement "{\nswitchD_00121578_caseD_1:\n          __ptr[3] = 0;\n          __ptr[4] = 0;\n        }" ({ "{") (labeled_statement "switchD_00121578_caseD_1:\n          __ptr[3] = 0;" (statement_identifier "switchD_00121578_caseD_1") (: ":") (expression_statement "__ptr[3] = 0;" (assignment_expression "__ptr[3] = 0" (subscript_expression "__ptr[3]" (identifier "__ptr") ([ "[") (number_literal "3") (] "]")) (= "=") (number_literal "0")) (; ";"))) (expression_statement "__ptr[4] = 0;" (assignment_expression "__ptr[4] = 0" (subscript_expression "__ptr[4]" (identifier "__ptr") ([ "[") (number_literal "4") (] "]")) (= "=") (number_literal "0")) (; ";")) (} "}")))) (expression_statement "uVar6 = FUN_00118700(__ptr + 8);" (assignment_expression "uVar6 = FUN_00118700(__ptr + 8)" (identifier "uVar6") (= "=") (call_expression "FUN_00118700(__ptr + 8)" (identifier "FUN_00118700") (argument_list "(__ptr + 8)" (( "(") (binary_expression "__ptr + 8" (identifier "__ptr") (+ "+") (number_literal "8")) () ")")))) (; ";")) (expression_statement "__ptr[7] = uVar6;" (assignment_expression "__ptr[7] = uVar6" (subscript_expression "__ptr[7]" (identifier "__ptr") ([ "[") (number_literal "7") (] "]")) (= "=") (identifier "uVar6")) (; ";")) (expression_statement "*__ptr = DAT_001e4990;" (assignment_expression "*__ptr = DAT_001e4990" (pointer_expression "*__ptr" (* "*") (identifier "__ptr")) (= "=") (identifier "DAT_001e4990")) (; ";")) (expression_statement "DAT_001e4990 = __ptr;" (assignment_expression "DAT_001e4990 = __ptr" (identifier "DAT_001e4990") (= "=") (identifier "__ptr")) (; ";")) (expression_statement "FUN_0011ffa0();" (call_expression "FUN_0011ffa0()" (identifier "FUN_0011ffa0") (argument_list "()" (( "(") () ")"))) (; ";")) (goto_statement "goto joined_r0x0012147f;" (goto "goto") (statement_identifier "joined_r0x0012147f") (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      pcVar8 = "missing reloc type";\n    }" (else "else") (compound_statement "{\n      pcVar8 = "missing reloc type";\n    }" ({ "{") (expression_statement "pcVar8 = "missing reloc type";" (assignment_expression "pcVar8 = "missing reloc type"" (identifier "pcVar8") (= "=") (string_literal ""missing reloc type"" (" """) (string_content "missing reloc type") (" """))) (; ";")) (} "}")))) (} "}")))) (labeled_statement "LAB_001214f0:\n  uVar6 = dcgettext(0,pcVar8,5);" (statement_identifier "LAB_001214f0") (: ":") (expression_statement "uVar6 = dcgettext(0,pcVar8,5);" (assignment_expression "uVar6 = dcgettext(0,pcVar8,5)" (identifier "uVar6") (= "=") (call_expression "dcgettext(0,pcVar8,5)" (identifier "dcgettext") (argument_list "(0,pcVar8,5)" (( "(") (number_literal "0") (, ",") (identifier "pcVar8") (, ",") (number_literal "5") () ")")))) (; ";"))) (expression_statement "FUN_0011da70(uVar6);" (call_expression "FUN_0011da70(uVar6)" (identifier "FUN_0011da70") (argument_list "(uVar6)" (( "(") (identifier "uVar6") () ")"))) (; ";")) (expression_statement "FUN_0011fd80();" (call_expression "FUN_0011fd80()" (identifier "FUN_0011fd80") (argument_list "()" (( "(") () ")"))) (; ";")) (expression_statement "free(__ptr);" (call_expression "free(__ptr)" (identifier "free") (argument_list "(__ptr)" (( "(") (identifier "__ptr") () ")"))) (; ";")) (labeled_statement "joined_r0x0012147f:\n  if (DAT_001e4650 == 0) {\n    return;\n  }" (statement_identifier "joined_r0x0012147f") (: ":") (if_statement "if (DAT_001e4650 == 0) {\n    return;\n  }" (if "if") (parenthesized_expression "(DAT_001e4650 == 0)" (( "(") (binary_expression "DAT_001e4650 == 0" (identifier "DAT_001e4650") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    return;\n  }" ({ "{") (return_statement "return;" (return "return") (; ";")) (} "}")))) (expression_statement "FUN_0011f810(pbVar11,(int)(char)bVar7);" (call_expression "FUN_0011f810(pbVar11,(int)(char)bVar7)" (identifier "FUN_0011f810") (argument_list "(pbVar11,(int)(char)bVar7)" (( "(") (identifier "pbVar11") (, ",") (cast_expression "(int)(char)bVar7" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (cast_expression "(char)bVar7" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "bVar7"))) () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}")))

void function_1(int ignore)

{
  char var_3;
  int var_12;
  type_1 *__ptr;
  type_2 var_6;
  type_3 *psVar4;
  type_4 *prVar5;
  type_5 bVar6;
  char *pcVar7;
  type_6 *var_16;
  type_7 var_15;
  type_5 *var_4;
  char *var_14;
  type_8 exp;
  
  __ptr = (type_1 *)var_1();
  if (var_2 == 0) {
    bVar6 = 0;
    var_4 = (type_5 *)0x0;
  }
  else {
    bVar6 = *var_9;
    var_3 = is_end_of_line[bVar6];
    var_4 = (type_5 *)var_9;
    while (var_3 == '\0') {
      var_4 = var_4 + 1;
      bVar6 = *var_4;
      var_3 = is_end_of_line[bVar6];
    }
    *var_4 = 0;
  }
  var_5(0,&exp,expr_normal);
  if ((type_5)exp._24_1_ < 7) {
    var_6 = 1L << (exp._24_1_ & 0x3f);
    if ((var_6 & 99) == 0) {
      if ((var_6 & 8) == 0) {
        if ((var_6 & 4) == 0) goto LAB_001212eb;
        exp.X_add_symbol = var_7(now_seg);
        exp._24_1_ = 3;
      }
      if (exp.X_add_number != 0) goto LAB_001212eb;
      (__ptr->u).a.offset_sym = exp.X_add_symbol;
      goto LAB_001212f7;
    }
    pcVar7 = "missing or bad offset expression";
  }
  else {
LAB_001212eb:
    psVar4 = var_8(&exp);
    (__ptr->u).a.offset_sym = psVar4;
LAB_001212f7:
    var_3 = *var_9;
    if (var_3 == ' ') {
      var_3 = var_9[1];
      var_9 = var_9 + 1;
    }
    if (var_3 == ',') {
      pcVar7 = var_9 + 1;
      if (var_9[1] == ' ') {
        pcVar7 = var_9 + 2;
      }
      var_9 = pcVar7;
      var_3 = var_10(&var_14);
      var_12 = var_11(var_14,"BFD_RELOC_",10);
      if (var_12 == 0) {
        var_15 = 0;
        (__ptr->u).a.howto = (type_4 *)0x0;
        var_16 = function_1::bfd_relocs;
        var_12 = var_13(var_14 + 10,"NONE");
        while (var_12 != 0) {
          var_15 = var_15 + 1;
          var_16 = var_16 + 1;
          if (var_15 == 5) goto LAB_001213d8;
          var_12 = var_13(var_14 + 10,var_16->name);
        }
        prVar5 = (type_4 *)
                 var_17(stdoutput,function_1::bfd_relocs[var_15].code);
        (__ptr->u).a.howto = prVar5;
      }
      else {
        prVar5 = (type_4 *)var_18(stdoutput,var_14);
        (__ptr->u).a.howto = prVar5;
      }
LAB_001213d8:
      pcVar7 = "unrecognized reloc type";
      *var_9 = var_3;
      if ((__ptr->u).a.howto != (type_4 *)0x0) {
        exp._24_1_ = 1;
        var_3 = *var_9;
        if (var_3 == '\"') {
          var_3 = var_9[1];
          var_9 = var_9 + 1;
        }
        if (var_3 == ' ') {
          var_3 = var_9[1];
          var_9 = var_9 + 1;
        }
        if (var_3 == ',') {
          var_9 = var_9 + 1;
          var_5(0,&exp,expr_normal);
          switch(exp._24_1_) {
          case 0:
          case 5:
          case 6:
            pcVar7 = "bad reloc expression";
            goto LAB_001214f0;
          case 1:
            goto switchD_00121578_caseD_1;
          case 2:
            (__ptr->u).a.sym = (type_3 *)0x0;
            (__ptr->u).a.addend = exp.X_add_number;
            break;
          case 3:
            (__ptr->u).a.sym = exp.X_add_symbol;
            (__ptr->u).a.addend = exp.X_add_number;
            break;
          default:
            psVar4 = var_8(&exp);
            (__ptr->u).a.addend = 0;
            (__ptr->u).a.sym = psVar4;
          }
        }
        else {
switchD_00121578_caseD_1:
          (__ptr->u).a.sym = (type_3 *)0x0;
          (__ptr->u).a.addend = 0;
        }
        pcVar7 = var_19(&__ptr->line);
        __ptr->file = pcVar7;
        __ptr->next = type_1;
        type_1 = __ptr;
        var_20();
        goto joined_r0x0012147f;
      }
    }
    else {
      pcVar7 = "missing reloc type";
    }
  }
LAB_001214f0:
  pcVar7 = (char *)var_21(0,pcVar7,5);
  var_22(pcVar7);
  var_23();
  var_24(__ptr);
joined_r0x0012147f:
  if (var_2 == 0) {
    return;
  }
  var_25((char *)var_4,(int)(char)bVar6);
  return;
}


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

void MASKED(void)

{
  char cVar1;
  byte *pbVar2;
  byte bVar3;
  int iVar4;
  undefined8 *__ptr;
  ulong uVar5;
  undefined8 uVar6;
  byte bVar7;
  char *pcVar8;
  undefined **ppuVar9;
  uint uVar10;
  byte *pbVar11;
  char *local_60;
  undefined8 local_58 [2];
  long local_48;
  byte local_40;
  
  __ptr = (undefined8 *)xmalloc(0x48);
  if (DAT_001e4650 == 0) {
    bVar7 = 0;
    pbVar11 = (byte *)0x0;
  }
  else {
    bVar7 = *DAT_001e4780;
    cVar1 = (&DAT_001da4e0)[bVar7];
    pbVar11 = DAT_001e4780;
    while (cVar1 == '\0') {
      pbVar11 = pbVar11 + 1;
      bVar7 = *pbVar11;
      cVar1 = (&DAT_001da4e0)[bVar7];
    }
    *pbVar11 = 0;
  }
  FUN_00114ae0(0,local_58,1);
  if (local_40 < 7) {
    uVar5 = 1L << (local_40 & 0x3f);
    if ((uVar5 & 99) == 0) {
      if ((uVar5 & 8) == 0) {
        if ((uVar5 & 4) == 0) goto LAB_001212eb;
        local_58[0] = FUN_001279c0(DAT_001e44a8);
        local_40 = 3;
      }
      if (local_48 != 0) goto LAB_001212eb;
      __ptr[1] = local_58[0];
      goto LAB_001212f7;
    }
    pcVar8 = "missing or bad offset expression";
  }
  else {
LAB_001212eb:
    uVar6 = FUN_00113ee0(local_58);
    __ptr[1] = uVar6;
LAB_001212f7:
    bVar3 = *DAT_001e4780;
    if (bVar3 == 0x20) {
      bVar3 = DAT_001e4780[1];
      DAT_001e4780 = DAT_001e4780 + 1;
    }
    if (bVar3 == 0x2c) {
      pbVar2 = DAT_001e4780 + 1;
      if (DAT_001e4780[1] == 0x20) {
        pbVar2 = DAT_001e4780 + 2;
      }
      DAT_001e4780 = pbVar2;
      bVar3 = FUN_001149a0(&local_60);
      iVar4 = strncasecmp(local_60,"BFD_RELOC_",10);
      if (iVar4 == 0) {
        uVar10 = 0;
        __ptr[2] = 0;
        ppuVar9 = &PTR_DAT_001602c0;
        iVar4 = strcasecmp(local_60 + 10,"NONE");
        while (iVar4 != 0) {
          uVar10 = uVar10 + 1;
          ppuVar9 = ppuVar9 + 2;
          if (uVar10 == 5) goto LAB_001213d8;
          iVar4 = strcasecmp(local_60 + 10,*ppuVar9);
        }
        uVar6 = bfd_reloc_type_lookup(DAT_001e4750,(&DAT_001602c8)[(ulong)uVar10 * 4]);
        __ptr[2] = uVar6;
      }
      else {
        uVar6 = bfd_reloc_name_lookup(DAT_001e4750,local_60);
        __ptr[2] = uVar6;
      }
LAB_001213d8:
      pcVar8 = "unrecognized reloc type";
      *DAT_001e4780 = bVar3;
      if (__ptr[2] != 0) {
        local_40 = 1;
        bVar3 = *DAT_001e4780;
        if (bVar3 == 0x22) {
          bVar3 = DAT_001e4780[1];
          DAT_001e4780 = DAT_001e4780 + 1;
        }
        if (bVar3 == 0x20) {
          bVar3 = DAT_001e4780[1];
          DAT_001e4780 = DAT_001e4780 + 1;
        }
        if (bVar3 == 0x2c) {
          DAT_001e4780 = DAT_001e4780 + 1;
          FUN_00114ae0(0,local_58,1);
          switch(local_40) {
          case 0:
          case 5:
          case 6:
            pcVar8 = "bad reloc expression";
            goto LAB_001214f0;
          case 1:
            goto switchD_00121578_caseD_1;
          case 2:
            __ptr[3] = 0;
            __ptr[4] = local_48;
            break;
          case 3:
            __ptr[3] = local_58[0];
            __ptr[4] = local_48;
            break;
          default:
            uVar6 = FUN_00113ee0(local_58);
            __ptr[4] = 0;
            __ptr[3] = uVar6;
          }
        }
        else {
switchD_00121578_caseD_1:
          __ptr[3] = 0;
          __ptr[4] = 0;
        }
        uVar6 = FUN_00118700(__ptr + 8);
        __ptr[7] = uVar6;
        *__ptr = DAT_001e4990;
        DAT_001e4990 = __ptr;
        FUN_0011ffa0();
        goto joined_r0x0012147f;
      }
    }
    else {
      pcVar8 = "missing reloc type";
    }
  }
LAB_001214f0:
  uVar6 = dcgettext(0,pcVar8,5);
  FUN_0011da70(uVar6);
  FUN_0011fd80();
  free(__ptr);
joined_r0x0012147f:
  if (DAT_001e4650 == 0) {
    return;
  }
  FUN_0011f810(pbVar11,(int)(char)bVar7);
  return;
}

