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

void s_mri_common(int small)

{
  byte bVar1;
  byte c;
  char cVar2;
  size_t sVar3;
  int iVar4;
  asymbol *paVar5;
  symbolS *s;
  char *pcVar6;
  char *pcVar7;
  byte *stop;
  offsetT oVar8;
  char *name;
  expressionS exp;
  
  if (flag_mri == 0) {
    s_comm_internal(0,(_func_symbolS_ptr_int_symbolS_ptr_addressT *)0x0);
    return;
  }
  bVar1 = *input_line_pointer;
  cVar2 = is_end_of_line[bVar1];
  stop = (byte *)input_line_pointer;
  while (cVar2 == '\0') {
    stop = stop + 1;
    bVar1 = *stop;
    cVar2 = is_end_of_line[bVar1];
  }
  *stop = 0;
  if (*input_line_pointer == ' ') {
    input_line_pointer = input_line_pointer + 1;
  }
  name = input_line_pointer;
  if ((PTR__sch_istable_0006df70[(uint)(byte)*input_line_pointer * 2] & 4) == 0) {
    cVar2 = get_symbol_name(&name);
    s = symbol_find_or_make(name);
    restore_line_pointer(cVar2);
LAB_0003294e:
    if (*input_line_pointer != ',') goto LAB_0003295d;
LAB_00032a5c:
    input_line_pointer = input_line_pointer + 1;
    oVar8 = get_absolute_expr(&exp);
    iVar4 = S_IS_DEFINED(s);
    if ((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)) goto LAB_00032b60;
    S_SET_EXTERNAL(s);
    S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8);
    mri_common_symbol = s;
    if (oVar8 != 0) {
      paVar5 = symbol_get_bfdsym(s);
      paVar5[1].the_bfd = (bfd *)(int)oVar8;
      paVar5[1].name = (char *)(int)((ulonglong)oVar8 >> 0x20);
    }
  }
  else {
    do {
      pcVar6 = input_line_pointer;
      input_line_pointer = pcVar6 + 1;
      c = pcVar6[1];
    } while ((PTR__sch_istable_0006df70[(uint)c * 2] & 4) != 0);
    pcVar6[1] = '\0';
    if (line_label != (symbolS *)0x0) {
      pcVar6 = S_GET_NAME(line_label);
      sVar3 = strlen(pcVar6);
      pcVar6 = (char *)xmalloc(input_line_pointer + ((sVar3 + 1) - (int)name));
      pcVar7 = S_GET_NAME(line_label);
      sprintf(pcVar6,"%s%s",name,pcVar7);
      name = pcVar6;
      s = symbol_find_or_make(pcVar6);
      restore_line_pointer(c);
      free(pcVar6);
      goto LAB_0003294e;
    }
    s = symbol_find_or_make(name);
    restore_line_pointer(c);
    if (*input_line_pointer == ',') goto LAB_00032a5c;
LAB_0003295d:
    iVar4 = S_IS_DEFINED(s);
    if ((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)) {
LAB_00032b60:
      pcVar6 = S_GET_NAME(s);
      pcVar7 = (char *)dcgettext(0,"symbol `%s\' is already defined",5);
      as_bad(pcVar7,pcVar6);
      ignore_rest_of_line();
      goto LAB_00032a10;
    }
    S_SET_EXTERNAL(s);
    S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8);
    mri_common_symbol = s;
  }
  if (line_label != (symbolS *)0x0) {
    exp._16_1_ = 3;
    exp.X_add_number._0_4_ = 0;
    exp.X_add_number._4_4_ = 0;
    exp.X_add_symbol = s;
    symbol_set_value_expression(line_label,&exp);
    symbol_set_frag(line_label,(fragS *)PTR_zero_address_frag_0006df6c);
    S_SET_SEGMENT(line_label,expr_section);
  }
  pcVar6 = input_line_pointer;
  if ((*input_line_pointer == ',') &&
     (pcVar6 = input_line_pointer + 2, input_line_pointer[2] == ',')) {
    pcVar6 = input_line_pointer + 4;
  }
  input_line_pointer = pcVar6;
  demand_empty_rest_of_line();
LAB_00032a10:
  mri_comment_end((char *)stop,(int)(char)bVar1);
  return;
}



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

void FUN_00032820(void)

{
  byte bVar1;
  byte bVar2;
  char cVar3;
  char *__s;
  size_t sVar4;
  byte *pbVar5;
  int iVar6;
  undefined4 uVar7;
  undefined4 uVar8;
  byte *pbVar9;
  longlong lVar10;
  byte *local_34;
  undefined4 local_30 [2];
  undefined4 local_28;
  undefined4 local_24;
  undefined1 local_20;
  undefined4 uStack_14;
  
  uStack_14 = 0x32829;
  if (DAT_00077768 == 0) {
    FUN_00032430(0,0);
    return;
  }
  bVar1 = *DAT_00077838;
  cVar3 = (&DAT_0006e2e0)[bVar1];
  pbVar9 = DAT_00077838;
  while (cVar3 == '\0') {
    pbVar9 = pbVar9 + 1;
    bVar1 = *pbVar9;
    cVar3 = (&DAT_0006e2e0)[bVar1];
  }
  *pbVar9 = 0;
  if (*DAT_00077838 == 0x20) {
    DAT_00077838 = DAT_00077838 + 1;
  }
  local_34 = DAT_00077838;
  if ((PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0) {
    cVar3 = FUN_000221e0(&local_34);
    uVar7 = FUN_0003a400(local_34);
    FUN_00024290((int)cVar3);
LAB_0003294e:
    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;
LAB_00032a5c:
    DAT_00077838 = DAT_00077838 + 1;
    lVar10 = FUN_0002c430();
    iVar6 = FUN_000380e0(uVar7);
    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;
    FUN_00039df0(uVar7);
    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);
    DAT_00077820 = uVar7;
    if (lVar10 != 0) {
      iVar6 = FUN_0003b810(uVar7);
      *(longlong *)(iVar6 + 0x20) = lVar10;
    }
  }
  else {
    do {
      pbVar5 = DAT_00077838;
      DAT_00077838 = pbVar5 + 1;
      bVar2 = pbVar5[1];
    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);
    pbVar5[1] = 0;
    if (DAT_00077828 != 0) {
      __s = (char *)FUN_000384a0(DAT_00077828);
      sVar4 = strlen(__s);
      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));
      uVar7 = FUN_000384a0(DAT_00077828);
      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);
      local_34 = pbVar5;
      uVar7 = FUN_0003a400(pbVar5);
      FUN_00024290((int)(char)bVar2);
      free(pbVar5);
      goto LAB_0003294e;
    }
    uVar7 = FUN_0003a400(local_34);
    FUN_00024290((int)(char)bVar2);
    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;
LAB_0003295d:
    iVar6 = FUN_000380e0(uVar7);
    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {
LAB_00032b60:
      uVar7 = FUN_000384a0(uVar7);
      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);
      FUN_0002bcf0(uVar8,uVar7);
      FUN_0002dff0();
      goto LAB_00032a10;
    }
    FUN_00039df0(uVar7);
    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);
    DAT_00077820 = uVar7;
  }
  if (DAT_00077828 != 0) {
    local_20 = 3;
    local_28 = 0;
    local_24 = 0;
    local_30[0] = uVar7;
    FUN_0003b070(DAT_00077828,local_30);
    FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);
    FUN_00038520(DAT_00077828,DAT_00077620);
  }
  pbVar5 = DAT_00077838;
  if ((*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)) {
    pbVar5 = DAT_00077838 + 4;
  }
  DAT_00077838 = pbVar5;
  FUN_0002e240();
LAB_00032a10:
  FUN_0002d9f0(pbVar9,(int)(char)bVar1);
  return;
}


PUSH EBP
PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x00016040
ADD EBX,0x3b7d7
SUB ESP,0x3c
LEA EAX,[EBX + 0x9768]
MOV EAX,dword ptr [EAX]
TEST EAX,EAX
JZ 0x00032b40
LEA EAX,[EBX + 0x9838]
MOV ESI,dword ptr [EAX]
MOV dword ptr [ESP + 0x4],EAX
MOVZX EAX,byte ptr [ESI]
CMP byte ptr [EBX + EAX*0x1 + 0x2e0],0x0
MOV byte ptr [ESP + 0xb],AL
JNZ 0x00032878
LEA EDX,[EBX + 0x2e0]
LEA ESI,[ESI]
ADD ESI,0x1
MOVZX ECX,byte ptr [ESI]
CMP byte ptr [EDX + ECX*0x1],0x0
JZ 0x00032868
MOV byte ptr [ESP + 0xb],CL
MOV EAX,dword ptr [ESP + 0x4]
MOV byte ptr [ESI],0x0
MOV EAX,dword ptr [EAX]
CMP byte ptr [EAX],0x20
JNZ 0x0003288f
MOV EDX,dword ptr [ESP + 0x4]
ADD EAX,0x1
MOV dword ptr [EDX],EAX
MOV dword ptr [ESP + 0x18],EAX
MOV EBP,dword ptr [EBX + 0xffffff70]
MOVZX EDX,byte ptr [EAX]
TEST byte ptr [EBP + EDX*0x2],0x4
JNZ 0x000328b2
JMP 0x00032ae8
MOV EAX,ECX
MOV EDI,dword ptr [ESP + 0x4]
LEA ECX,[EAX + 0x1]
MOV dword ptr [EDI],ECX
MOVSX EDX,byte ptr [EAX + 0x1]
MOVZX EDI,DL
TEST byte ptr [EBP + EDI*0x2],0x4
JNZ 0x000328b0
LEA EBP,[EBX + 0x9828]
MOV byte ptr [EAX + 0x1],0x0
MOV dword ptr [ESP + 0xc],EDX
MOV EAX,dword ptr [EBP]
TEST EAX,EAX
JZ 0x00032a30
SUB ESP,0xc
PUSH EAX
CALL 0x000384a0
MOV dword ptr [ESP],EAX
CALL 0x00014440
MOV ECX,EAX
MOV EAX,dword ptr [ESP + 0x14]
MOV EAX,dword ptr [EAX]
SUB EAX,dword ptr [ESP + 0x28]
LEA EAX,[ECX + EAX*0x1 + 0x1]
MOV dword ptr [ESP],EAX
CALL 0x000147d0
MOV EDI,EAX
POP EAX
PUSH dword ptr [EBP]
CALL 0x000384a0
PUSH EAX
LEA EAX,[EBX + 0xfffe6386]
PUSH dword ptr [ESP + 0x2c]
PUSH EAX
PUSH EDI
CALL 0x00014690
MOV dword ptr [ESP + 0x38],EDI
ADD ESP,0x14
PUSH EDI
CALL 0x0003a400
MOV EDX,dword ptr [ESP + 0x1c]
MOV EBP,EAX
MOV dword ptr [ESP],EDX
CALL 0x00024290
MOV dword ptr [ESP],EDI
CALL 0x000147c0
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x4]
MOV EAX,dword ptr [EAX]
CMP byte ptr [EAX],0x2c
JZ 0x00032a5c
SUB ESP,0xc
PUSH EBP
CALL 0x000380e0
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00032981
SUB ESP,0xc
PUSH EBP
CALL 0x00038090
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00032b60
SUB ESP,0xc
PUSH EBP
CALL 0x00039df0
POP EAX
POP EDX
PUSH dword ptr [EBX + 0xffffffa8]
PUSH EBP
CALL 0x00038520
LEA EAX,[EBX + 0x9820]
ADD ESP,0x10
MOV dword ptr [EAX],EBP
LEA EDI,[EBX + 0x9828]
MOV EAX,dword ptr [EDI]
TEST EAX,EAX
JZ 0x000329f9
MOV byte ptr [ESP + 0x2c],0x3
SUB ESP,0x8
MOV dword ptr [ESP + 0x24],EBP
MOV dword ptr [ESP + 0x2c],0x0
MOV dword ptr [ESP + 0x30],0x0
LEA EDX,[ESP + 0x24]
PUSH EDX
PUSH EAX
CALL 0x0003b070
POP ECX
POP EBP
PUSH dword ptr [EBX + 0xffffff6c]
PUSH dword ptr [EDI]
CALL 0x0003b1a0
POP EAX
LEA EAX,[EBX + 0x9620]
POP EDX
PUSH dword ptr [EAX]
PUSH dword ptr [EDI]
CALL 0x00038520
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x4]
MOV EAX,dword ptr [EAX]
CMP byte ptr [EAX],0x2c
JZ 0x00032b20
CALL 0x0002e240
SUB ESP,0x8
MOVSX EAX,byte ptr [ESP + 0x13]
PUSH EAX
PUSH ESI
CALL 0x0002d9f0
ADD ESP,0x10
ADD ESP,0x3c
POP EBX
POP ESI
POP EDI
POP EBP
RET
SUB ESP,0xc
PUSH dword ptr [ESP + 0x24]
CALL 0x0003a400
MOV EDX,dword ptr [ESP + 0x1c]
MOV EBP,EAX
MOV dword ptr [ESP],EDX
CALL 0x00024290
ADD ESP,0x10
MOV EAX,dword ptr [ESP + 0x4]
MOV EAX,dword ptr [EAX]
CMP byte ptr [EAX],0x2c
JNZ 0x0003295d
MOV EDX,dword ptr [ESP + 0x4]
ADD EAX,0x1
MOV dword ptr [EDX],EAX
LEA EAX,[ESP + 0x1c]
CALL 0x0002c430
SUB ESP,0xc
MOV dword ptr [ESP + 0x18],EDX
MOV EDI,EAX
PUSH EBP
CALL 0x000380e0
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00032a98
SUB ESP,0xc
PUSH EBP
CALL 0x00038090
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00032b60
SUB ESP,0xc
PUSH EBP
CALL 0x00039df0
POP ECX
POP EAX
PUSH dword ptr [EBX + 0xffffffa8]
PUSH EBP
CALL 0x00038520
LEA EAX,[EBX + 0x9820]
ADD ESP,0x10
MOV dword ptr [EAX],EBP
MOV EAX,dword ptr [ESP + 0xc]
OR EAX,EDI
JZ 0x000329a3
SUB ESP,0xc
PUSH EBP
CALL 0x0003b810
MOV EDX,dword ptr [ESP + 0x1c]
ADD ESP,0x10
MOV dword ptr [EAX + 0x20],EDI
MOV dword ptr [EAX + 0x24],EDX
JMP 0x000329a3
SUB ESP,0xc
LEA EAX,[ESP + 0x24]
PUSH EAX
CALL 0x000221e0
MOV EDI,EAX
POP EAX
PUSH dword ptr [ESP + 0x24]
CALL 0x0003a400
MOV EBP,EAX
MOV EAX,EDI
MOVSX EDI,AL
MOV dword ptr [ESP],EDI
CALL 0x00024290
ADD ESP,0x10
JMP 0x0003294e
MOV EDI,dword ptr [ESP + 0x4]
LEA EDX,[EAX + 0x2]
MOV dword ptr [EDI],EDX
CMP byte ptr [EAX + 0x2],0x2c
JNZ 0x00032a08
ADD EAX,0x4
MOV dword ptr [EDI],EAX
JMP 0x00032a08
SUB ESP,0x8
PUSH 0x0
PUSH 0x0
CALL 0x00032430
ADD ESP,0x10
ADD ESP,0x3c
POP EBX
POP ESI
POP EDI
POP EBP
RET
SUB ESP,0xc
PUSH EBP
CALL 0x000384a0
ADD ESP,0xc
MOV EDI,EAX
LEA EAX,[EBX + 0xfffe3388]
PUSH 0x5
PUSH EAX
PUSH 0x0
CALL 0x000141a0
POP EDX
POP ECX
PUSH EDI
PUSH EAX
CALL 0x0002bcf0
CALL 0x0002dff0
POP EBX
POP EDI
JMP 0x00032a10
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nvoid FUN_00032820(void)\n\n{\n  byte bVar1;\n  byte bVar2;\n  char cVar3;\n  char *__s;\n  size_t sVar4;\n  byte *pbVar5;\n  int iVar6;\n  undefined4 uVar7;\n  undefined4 uVar8;\n  byte *pbVar9;\n  longlong lVar10;\n  byte *local_34;\n  undefined4 local_30 [2];\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined1 local_20;\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x32829;\n  if (DAT_00077768 == 0) {\n    FUN_00032430(0,0);\n    return;\n  }\n  bVar1 = *DAT_00077838;\n  cVar3 = (&DAT_0006e2e0)[bVar1];\n  pbVar9 = DAT_00077838;\n  while (cVar3 == '\0') {\n    pbVar9 = pbVar9 + 1;\n    bVar1 = *pbVar9;\n    cVar3 = (&DAT_0006e2e0)[bVar1];\n  }\n  *pbVar9 = 0;\n  if (*DAT_00077838 == 0x20) {\n    DAT_00077838 = DAT_00077838 + 1;\n  }\n  local_34 = DAT_00077838;\n  if ((PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0) {\n    cVar3 = FUN_000221e0(&local_34);\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)cVar3);\nLAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;\nLAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;\n    lVar10 = FUN_0002c430();\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n    if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }\n  }\n  else {\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }\n  if (DAT_00077828 != 0) {\n    local_20 = 3;\n    local_28 = 0;\n    local_24 = 0;\n    local_30[0] = uVar7;\n    FUN_0003b070(DAT_00077828,local_30);\n    FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);\n    FUN_00038520(DAT_00077828,DAT_00077620);\n  }\n  pbVar5 = DAT_00077838;\n  if ((*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)) {\n    pbVar5 = DAT_00077838 + 4;\n  }\n  DAT_00077838 = pbVar5;\n  FUN_0002e240();\nLAB_00032a10:\n  FUN_0002d9f0(pbVar9,(int)(char)bVar1);\n  return;\n}\n\n" comment (function_definition "void FUN_00032820(void)\n\n{\n  byte bVar1;\n  byte bVar2;\n  char cVar3;\n  char *__s;\n  size_t sVar4;\n  byte *pbVar5;\n  int iVar6;\n  undefined4 uVar7;\n  undefined4 uVar8;\n  byte *pbVar9;\n  longlong lVar10;\n  byte *local_34;\n  undefined4 local_30 [2];\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined1 local_20;\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x32829;\n  if (DAT_00077768 == 0) {\n    FUN_00032430(0,0);\n    return;\n  }\n  bVar1 = *DAT_00077838;\n  cVar3 = (&DAT_0006e2e0)[bVar1];\n  pbVar9 = DAT_00077838;\n  while (cVar3 == '\0') {\n    pbVar9 = pbVar9 + 1;\n    bVar1 = *pbVar9;\n    cVar3 = (&DAT_0006e2e0)[bVar1];\n  }\n  *pbVar9 = 0;\n  if (*DAT_00077838 == 0x20) {\n    DAT_00077838 = DAT_00077838 + 1;\n  }\n  local_34 = DAT_00077838;\n  if ((PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0) {\n    cVar3 = FUN_000221e0(&local_34);\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)cVar3);\nLAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;\nLAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;\n    lVar10 = FUN_0002c430();\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n    if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }\n  }\n  else {\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }\n  if (DAT_00077828 != 0) {\n    local_20 = 3;\n    local_28 = 0;\n    local_24 = 0;\n    local_30[0] = uVar7;\n    FUN_0003b070(DAT_00077828,local_30);\n    FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);\n    FUN_00038520(DAT_00077828,DAT_00077620);\n  }\n  pbVar5 = DAT_00077838;\n  if ((*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)) {\n    pbVar5 = DAT_00077838 + 4;\n  }\n  DAT_00077838 = pbVar5;\n  FUN_0002e240();\nLAB_00032a10:\n  FUN_0002d9f0(pbVar9,(int)(char)bVar1);\n  return;\n}" primitive_type (function_declarator "FUN_00032820(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  byte bVar1;\n  byte bVar2;\n  char cVar3;\n  char *__s;\n  size_t sVar4;\n  byte *pbVar5;\n  int iVar6;\n  undefined4 uVar7;\n  undefined4 uVar8;\n  byte *pbVar9;\n  longlong lVar10;\n  byte *local_34;\n  undefined4 local_30 [2];\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined1 local_20;\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x32829;\n  if (DAT_00077768 == 0) {\n    FUN_00032430(0,0);\n    return;\n  }\n  bVar1 = *DAT_00077838;\n  cVar3 = (&DAT_0006e2e0)[bVar1];\n  pbVar9 = DAT_00077838;\n  while (cVar3 == '\0') {\n    pbVar9 = pbVar9 + 1;\n    bVar1 = *pbVar9;\n    cVar3 = (&DAT_0006e2e0)[bVar1];\n  }\n  *pbVar9 = 0;\n  if (*DAT_00077838 == 0x20) {\n    DAT_00077838 = DAT_00077838 + 1;\n  }\n  local_34 = DAT_00077838;\n  if ((PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0) {\n    cVar3 = FUN_000221e0(&local_34);\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)cVar3);\nLAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;\nLAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;\n    lVar10 = FUN_0002c430();\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n    if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }\n  }\n  else {\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }\n  if (DAT_00077828 != 0) {\n    local_20 = 3;\n    local_28 = 0;\n    local_24 = 0;\n    local_30[0] = uVar7;\n    FUN_0003b070(DAT_00077828,local_30);\n    FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);\n    FUN_00038520(DAT_00077828,DAT_00077620);\n  }\n  pbVar5 = DAT_00077838;\n  if ((*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)) {\n    pbVar5 = DAT_00077838 + 4;\n  }\n  DAT_00077838 = pbVar5;\n  FUN_0002e240();\nLAB_00032a10:\n  FUN_0002d9f0(pbVar9,(int)(char)bVar1);\n  return;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "byte bVar2;" type_identifier identifier ;) (declaration "char cVar3;" primitive_type identifier ;) (declaration "char *__s;" primitive_type (pointer_declarator "*__s" * identifier) ;) (declaration "size_t sVar4;" primitive_type identifier ;) (declaration "byte *pbVar5;" type_identifier (pointer_declarator "*pbVar5" * identifier) ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "undefined4 uVar7;" type_identifier identifier ;) (declaration "undefined4 uVar8;" type_identifier identifier ;) (declaration "byte *pbVar9;" type_identifier (pointer_declarator "*pbVar9" * identifier) ;) (declaration "longlong lVar10;" type_identifier identifier ;) (declaration "byte *local_34;" type_identifier (pointer_declarator "*local_34" * identifier) ;) (declaration "undefined4 local_30 [2];" type_identifier (array_declarator "local_30 [2]" identifier [ number_literal ]) ;) (declaration "undefined4 local_28;" type_identifier identifier ;) (declaration "undefined4 local_24;" type_identifier identifier ;) (declaration "undefined1 local_20;" type_identifier identifier ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "uStack_14 = 0x32829;" (assignment_expression "uStack_14 = 0x32829" identifier = number_literal) ;) (if_statement "if (DAT_00077768 == 0) {\n    FUN_00032430(0,0);\n    return;\n  }" if (parenthesized_expression "(DAT_00077768 == 0)" ( (binary_expression "DAT_00077768 == 0" identifier == number_literal) )) (compound_statement "{\n    FUN_00032430(0,0);\n    return;\n  }" { (expression_statement "FUN_00032430(0,0);" (call_expression "FUN_00032430(0,0)" identifier (argument_list "(0,0)" ( number_literal , number_literal ))) ;) (return_statement "return;" return ;) })) (expression_statement "bVar1 = *DAT_00077838;" (assignment_expression "bVar1 = *DAT_00077838" identifier = (pointer_expression "*DAT_00077838" * identifier)) ;) (expression_statement "cVar3 = (&DAT_0006e2e0)[bVar1];" (assignment_expression "cVar3 = (&DAT_0006e2e0)[bVar1]" identifier = (subscript_expression "(&DAT_0006e2e0)[bVar1]" (parenthesized_expression "(&DAT_0006e2e0)" ( (pointer_expression "&DAT_0006e2e0" & identifier) )) [ identifier ])) ;) (expression_statement "pbVar9 = DAT_00077838;" (assignment_expression "pbVar9 = DAT_00077838" identifier = identifier) ;) (while_statement "while (cVar3 == '\0') {\n    pbVar9 = pbVar9 + 1;\n    bVar1 = *pbVar9;\n    cVar3 = (&DAT_0006e2e0)[bVar1];\n  }" while (parenthesized_expression "(cVar3 == '\0')" ( (binary_expression "cVar3 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    pbVar9 = pbVar9 + 1;\n    bVar1 = *pbVar9;\n    cVar3 = (&DAT_0006e2e0)[bVar1];\n  }" { (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "bVar1 = *pbVar9;" (assignment_expression "bVar1 = *pbVar9" identifier = (pointer_expression "*pbVar9" * identifier)) ;) (expression_statement "cVar3 = (&DAT_0006e2e0)[bVar1];" (assignment_expression "cVar3 = (&DAT_0006e2e0)[bVar1]" identifier = (subscript_expression "(&DAT_0006e2e0)[bVar1]" (parenthesized_expression "(&DAT_0006e2e0)" ( (pointer_expression "&DAT_0006e2e0" & identifier) )) [ identifier ])) ;) })) (expression_statement "*pbVar9 = 0;" (assignment_expression "*pbVar9 = 0" (pointer_expression "*pbVar9" * identifier) = number_literal) ;) (if_statement "if (*DAT_00077838 == 0x20) {\n    DAT_00077838 = DAT_00077838 + 1;\n  }" if (parenthesized_expression "(*DAT_00077838 == 0x20)" ( (binary_expression "*DAT_00077838 == 0x20" (pointer_expression "*DAT_00077838" * identifier) == number_literal) )) (compound_statement "{\n    DAT_00077838 = DAT_00077838 + 1;\n  }" { (expression_statement "DAT_00077838 = DAT_00077838 + 1;" (assignment_expression "DAT_00077838 = DAT_00077838 + 1" identifier = (binary_expression "DAT_00077838 + 1" identifier + number_literal)) ;) })) (expression_statement "local_34 = DAT_00077838;" (assignment_expression "local_34 = DAT_00077838" identifier = identifier) ;) (if_statement "if ((PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0) {\n    cVar3 = FUN_000221e0(&local_34);\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)cVar3);\nLAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;\nLAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;\n    lVar10 = FUN_0002c430();\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n    if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }\n  }\n  else {\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }" if (parenthesized_expression "((PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0)" ( (binary_expression "(PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0" (parenthesized_expression "(PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4)" ( (binary_expression "PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4" (subscript_expression "PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2]" identifier [ (binary_expression "(uint)*DAT_00077838 * 2" (binary_expression "(uint)*DAT_00077838" (parenthesized_expression "(uint)" ( identifier )) * identifier) * number_literal) ]) & number_literal) )) == number_literal) )) (compound_statement "{\n    cVar3 = FUN_000221e0(&local_34);\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)cVar3);\nLAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;\nLAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;\n    lVar10 = FUN_0002c430();\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n    if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }\n  }" { (expression_statement "cVar3 = FUN_000221e0(&local_34);" (assignment_expression "cVar3 = FUN_000221e0(&local_34)" identifier = (call_expression "FUN_000221e0(&local_34)" identifier (argument_list "(&local_34)" ( (pointer_expression "&local_34" & identifier) )))) ;) (expression_statement "uVar7 = FUN_0003a400(local_34);" (assignment_expression "uVar7 = FUN_0003a400(local_34)" identifier = (call_expression "FUN_0003a400(local_34)" identifier (argument_list "(local_34)" ( identifier )))) ;) (expression_statement "FUN_00024290((int)cVar3);" (call_expression "FUN_00024290((int)cVar3)" identifier (argument_list "((int)cVar3)" ( (cast_expression "(int)cVar3" ( (type_descriptor "int" primitive_type) ) identifier) ))) ;) (labeled_statement "LAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;" statement_identifier : (if_statement "if (*DAT_00077838 != 0x2c) goto LAB_0003295d;" if (parenthesized_expression "(*DAT_00077838 != 0x2c)" ( (binary_expression "*DAT_00077838 != 0x2c" (pointer_expression "*DAT_00077838" * identifier) != number_literal) )) (goto_statement "goto LAB_0003295d;" goto statement_identifier ;))) (labeled_statement "LAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;" statement_identifier : (expression_statement "DAT_00077838 = DAT_00077838 + 1;" (assignment_expression "DAT_00077838 = DAT_00077838 + 1" identifier = (binary_expression "DAT_00077838 + 1" identifier + number_literal)) ;)) (expression_statement "lVar10 = FUN_0002c430();" (assignment_expression "lVar10 = FUN_0002c430()" identifier = (call_expression "FUN_0002c430()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar6 = FUN_000380e0(uVar7);" (assignment_expression "iVar6 = FUN_000380e0(uVar7)" identifier = (call_expression "FUN_000380e0(uVar7)" identifier (argument_list "(uVar7)" ( identifier )))) ;) (if_statement "if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;" if (parenthesized_expression "((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0))" ( (binary_expression "(iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)" (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar6 = FUN_00038090(uVar7), iVar6 == 0)" ( (comma_expression "iVar6 = FUN_00038090(uVar7), iVar6 == 0" (assignment_expression "iVar6 = FUN_00038090(uVar7)" identifier = (call_expression "FUN_00038090(uVar7)" identifier (argument_list "(uVar7)" ( identifier )))) , (binary_expression "iVar6 == 0" identifier == number_literal)) ))) )) (goto_statement "goto LAB_00032b60;" goto statement_identifier ;)) (expression_statement "FUN_00039df0(uVar7);" (call_expression "FUN_00039df0(uVar7)" identifier (argument_list "(uVar7)" ( identifier ))) ;) (expression_statement "FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);" (call_expression "FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8)" identifier (argument_list "(uVar7,PTR__bfd_std_section_0006dfa8)" ( identifier , identifier ))) ;) (expression_statement "DAT_00077820 = uVar7;" (assignment_expression "DAT_00077820 = uVar7" identifier = identifier) ;) (if_statement "if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }" if (parenthesized_expression "(lVar10 != 0)" ( (binary_expression "lVar10 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }" { (expression_statement "iVar6 = FUN_0003b810(uVar7);" (assignment_expression "iVar6 = FUN_0003b810(uVar7)" identifier = (call_expression "FUN_0003b810(uVar7)" identifier (argument_list "(uVar7)" ( identifier )))) ;) (expression_statement "*(longlong *)(iVar6 + 0x20) = lVar10;" (assignment_expression "*(longlong *)(iVar6 + 0x20) = lVar10" (pointer_expression "*(longlong *)(iVar6 + 0x20)" * (cast_expression "(longlong *)(iVar6 + 0x20)" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x20)" ( (binary_expression "iVar6 + 0x20" identifier + number_literal) )))) = identifier) ;) })) }) (else_clause "else {\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }" else (compound_statement "{\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }" { (do_statement "do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);" do (compound_statement "{\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    }" { (expression_statement "pbVar5 = DAT_00077838;" (assignment_expression "pbVar5 = DAT_00077838" identifier = identifier) ;) (expression_statement "DAT_00077838 = pbVar5 + 1;" (assignment_expression "DAT_00077838 = pbVar5 + 1" identifier = (binary_expression "pbVar5 + 1" identifier + number_literal)) ;) (expression_statement "bVar2 = pbVar5[1];" (assignment_expression "bVar2 = pbVar5[1]" identifier = (subscript_expression "pbVar5[1]" identifier [ number_literal ])) ;) }) while (parenthesized_expression "((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0)" ( (binary_expression "(PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0" (parenthesized_expression "(PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4)" ( (binary_expression "PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4" (subscript_expression "PTR__sch_istable_0006df70[(uint)bVar2 * 2]" identifier [ (binary_expression "(uint)bVar2 * 2" (cast_expression "(uint)bVar2" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal) ]) & number_literal) )) != number_literal) )) ;) (expression_statement "pbVar5[1] = 0;" (assignment_expression "pbVar5[1] = 0" (subscript_expression "pbVar5[1]" identifier [ number_literal ]) = number_literal) ;) (if_statement "if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }" if (parenthesized_expression "(DAT_00077828 != 0)" ( (binary_expression "DAT_00077828 != 0" identifier != number_literal) )) (compound_statement "{\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }" { (expression_statement "__s = (char *)FUN_000384a0(DAT_00077828);" (assignment_expression "__s = (char *)FUN_000384a0(DAT_00077828)" identifier = (cast_expression "(char *)FUN_000384a0(DAT_00077828)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000384a0(DAT_00077828)" identifier (argument_list "(DAT_00077828)" ( identifier ))))) ;) (expression_statement "sVar4 = strlen(__s);" (assignment_expression "sVar4 = strlen(__s)" identifier = (call_expression "strlen(__s)" identifier (argument_list "(__s)" ( identifier )))) ;) (expression_statement "pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));" (assignment_expression "pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34))" identifier = (cast_expression "(byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34))" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34))" identifier (argument_list "(DAT_00077838 + ((sVar4 + 1) - (int)local_34))" ( (binary_expression "DAT_00077838 + ((sVar4 + 1) - (int)local_34)" identifier + (parenthesized_expression "((sVar4 + 1) - (int)local_34)" ( (binary_expression "(sVar4 + 1) - (int)local_34" (parenthesized_expression "(sVar4 + 1)" ( (binary_expression "sVar4 + 1" identifier + number_literal) )) - (cast_expression "(int)local_34" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))))) ;) (expression_statement "uVar7 = FUN_000384a0(DAT_00077828);" (assignment_expression "uVar7 = FUN_000384a0(DAT_00077828)" identifier = (call_expression "FUN_000384a0(DAT_00077828)" identifier (argument_list "(DAT_00077828)" ( identifier )))) ;) (expression_statement "sprintf((char *)pbVar5,"%s%s",local_34,uVar7);" (call_expression "sprintf((char *)pbVar5,"%s%s",local_34,uVar7)" identifier (argument_list "((char *)pbVar5,"%s%s",local_34,uVar7)" ( (cast_expression "(char *)pbVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""%s%s"" " string_content ") , identifier , identifier ))) ;) (expression_statement "local_34 = pbVar5;" (assignment_expression "local_34 = pbVar5" identifier = identifier) ;) (expression_statement "uVar7 = FUN_0003a400(pbVar5);" (assignment_expression "uVar7 = FUN_0003a400(pbVar5)" identifier = (call_expression "FUN_0003a400(pbVar5)" identifier (argument_list "(pbVar5)" ( identifier )))) ;) (expression_statement "FUN_00024290((int)(char)bVar2);" (call_expression "FUN_00024290((int)(char)bVar2)" identifier (argument_list "((int)(char)bVar2)" ( (cast_expression "(int)(char)bVar2" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar2" ( (type_descriptor "char" primitive_type) ) identifier)) ))) ;) (expression_statement "free(pbVar5);" (call_expression "free(pbVar5)" identifier (argument_list "(pbVar5)" ( identifier ))) ;) (goto_statement "goto LAB_0003294e;" goto statement_identifier ;) })) (expression_statement "uVar7 = FUN_0003a400(local_34);" (assignment_expression "uVar7 = FUN_0003a400(local_34)" identifier = (call_expression "FUN_0003a400(local_34)" identifier (argument_list "(local_34)" ( identifier )))) ;) (expression_statement "FUN_00024290((int)(char)bVar2);" (call_expression "FUN_00024290((int)(char)bVar2)" identifier (argument_list "((int)(char)bVar2)" ( (cast_expression "(int)(char)bVar2" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar2" ( (type_descriptor "char" primitive_type) ) identifier)) ))) ;) (if_statement "if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;" if (parenthesized_expression "(*DAT_00077838 == 0x2c)" ( (binary_expression "*DAT_00077838 == 0x2c" (pointer_expression "*DAT_00077838" * identifier) == number_literal) )) (goto_statement "goto LAB_00032a5c;" goto statement_identifier ;)) (labeled_statement "LAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);" statement_identifier : (expression_statement "iVar6 = FUN_000380e0(uVar7);" (assignment_expression "iVar6 = FUN_000380e0(uVar7)" identifier = (call_expression "FUN_000380e0(uVar7)" identifier (argument_list "(uVar7)" ( identifier )))) ;)) (if_statement "if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }" if (parenthesized_expression "((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0))" ( (binary_expression "(iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)" (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar6 = FUN_00038090(uVar7), iVar6 == 0)" ( (comma_expression "iVar6 = FUN_00038090(uVar7), iVar6 == 0" (assignment_expression "iVar6 = FUN_00038090(uVar7)" identifier = (call_expression "FUN_00038090(uVar7)" identifier (argument_list "(uVar7)" ( identifier )))) , (binary_expression "iVar6 == 0" identifier == number_literal)) ))) )) (compound_statement "{\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }" { (labeled_statement "LAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);" statement_identifier : (expression_statement "uVar7 = FUN_000384a0(uVar7);" (assignment_expression "uVar7 = FUN_000384a0(uVar7)" identifier = (call_expression "FUN_000384a0(uVar7)" identifier (argument_list "(uVar7)" ( identifier )))) ;)) (expression_statement "uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);" (assignment_expression "uVar8 = dcgettext(0,"symbol `%s\' is already defined",5)" identifier = (call_expression "dcgettext(0,"symbol `%s\' is already defined",5)" identifier (argument_list "(0,"symbol `%s\' is already defined",5)" ( number_literal , (string_literal ""symbol `%s\' is already defined"" " string_content escape_sequence string_content ") , number_literal )))) ;) (expression_statement "FUN_0002bcf0(uVar8,uVar7);" (call_expression "FUN_0002bcf0(uVar8,uVar7)" identifier (argument_list "(uVar8,uVar7)" ( identifier , identifier ))) ;) (expression_statement "FUN_0002dff0();" (call_expression "FUN_0002dff0()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_00032a10;" goto statement_identifier ;) })) (expression_statement "FUN_00039df0(uVar7);" (call_expression "FUN_00039df0(uVar7)" identifier (argument_list "(uVar7)" ( identifier ))) ;) (expression_statement "FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);" (call_expression "FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8)" identifier (argument_list "(uVar7,PTR__bfd_std_section_0006dfa8)" ( identifier , identifier ))) ;) (expression_statement "DAT_00077820 = uVar7;" (assignment_expression "DAT_00077820 = uVar7" identifier = identifier) ;) }))) (if_statement "if (DAT_00077828 != 0) {\n    local_20 = 3;\n    local_28 = 0;\n    local_24 = 0;\n    local_30[0] = uVar7;\n    FUN_0003b070(DAT_00077828,local_30);\n    FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);\n    FUN_00038520(DAT_00077828,DAT_00077620);\n  }" if (parenthesized_expression "(DAT_00077828 != 0)" ( (binary_expression "DAT_00077828 != 0" identifier != number_literal) )) (compound_statement "{\n    local_20 = 3;\n    local_28 = 0;\n    local_24 = 0;\n    local_30[0] = uVar7;\n    FUN_0003b070(DAT_00077828,local_30);\n    FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);\n    FUN_00038520(DAT_00077828,DAT_00077620);\n  }" { (expression_statement "local_20 = 3;" (assignment_expression "local_20 = 3" identifier = number_literal) ;) (expression_statement "local_28 = 0;" (assignment_expression "local_28 = 0" identifier = number_literal) ;) (expression_statement "local_24 = 0;" (assignment_expression "local_24 = 0" identifier = number_literal) ;) (expression_statement "local_30[0] = uVar7;" (assignment_expression "local_30[0] = uVar7" (subscript_expression "local_30[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "FUN_0003b070(DAT_00077828,local_30);" (call_expression "FUN_0003b070(DAT_00077828,local_30)" identifier (argument_list "(DAT_00077828,local_30)" ( identifier , identifier ))) ;) (expression_statement "FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);" (call_expression "FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c)" identifier (argument_list "(DAT_00077828,PTR_DAT_0006df6c)" ( identifier , identifier ))) ;) (expression_statement "FUN_00038520(DAT_00077828,DAT_00077620);" (call_expression "FUN_00038520(DAT_00077828,DAT_00077620)" identifier (argument_list "(DAT_00077828,DAT_00077620)" ( identifier , identifier ))) ;) })) (expression_statement "pbVar5 = DAT_00077838;" (assignment_expression "pbVar5 = DAT_00077838" identifier = identifier) ;) (if_statement "if ((*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)) {\n    pbVar5 = DAT_00077838 + 4;\n  }" if (parenthesized_expression "((*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c))" ( (binary_expression "(*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)" (parenthesized_expression "(*DAT_00077838 == 0x2c)" ( (binary_expression "*DAT_00077838 == 0x2c" (pointer_expression "*DAT_00077838" * identifier) == number_literal) )) && (parenthesized_expression "(pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)" ( (comma_expression "pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c" (assignment_expression "pbVar5 = DAT_00077838 + 2" identifier = (binary_expression "DAT_00077838 + 2" identifier + number_literal)) , (binary_expression "DAT_00077838[2] == 0x2c" (subscript_expression "DAT_00077838[2]" identifier [ number_literal ]) == number_literal)) ))) )) (compound_statement "{\n    pbVar5 = DAT_00077838 + 4;\n  }" { (expression_statement "pbVar5 = DAT_00077838 + 4;" (assignment_expression "pbVar5 = DAT_00077838 + 4" identifier = (binary_expression "DAT_00077838 + 4" identifier + number_literal)) ;) })) (expression_statement "DAT_00077838 = pbVar5;" (assignment_expression "DAT_00077838 = pbVar5" identifier = identifier) ;) (expression_statement "FUN_0002e240();" (call_expression "FUN_0002e240()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_00032a10:\n  FUN_0002d9f0(pbVar9,(int)(char)bVar1);" statement_identifier : (expression_statement "FUN_0002d9f0(pbVar9,(int)(char)bVar1);" (call_expression "FUN_0002d9f0(pbVar9,(int)(char)bVar1)" identifier (argument_list "(pbVar9,(int)(char)bVar1)" ( identifier , (cast_expression "(int)(char)bVar1" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar1" ( (type_descriptor "char" primitive_type) ) identifier)) ))) ;)) (return_statement "return;" return ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n/* WARNING: Unknown calling convention */\n\nvoid s_mri_common(int small)\n\n{\n  byte bVar1;\n  byte c;\n  char cVar2;\n  size_t sVar3;\n  int iVar4;\n  asymbol *paVar5;\n  symbolS *s;\n  char *pcVar6;\n  char *pcVar7;\n  byte *stop;\n  offsetT oVar8;\n  char *name;\n  expressionS exp;\n  \n  if (flag_mri == 0) {\n    s_comm_internal(0,(_func_symbolS_ptr_int_symbolS_ptr_addressT *)0x0);\n    return;\n  }\n  bVar1 = *input_line_pointer;\n  cVar2 = is_end_of_line[bVar1];\n  stop = (byte *)input_line_pointer;\n  while (cVar2 == '\0') {\n    stop = stop + 1;\n    bVar1 = *stop;\n    cVar2 = is_end_of_line[bVar1];\n  }\n  *stop = 0;\n  if (*input_line_pointer == ' ') {\n    input_line_pointer = input_line_pointer + 1;\n  }\n  name = input_line_pointer;\n  if ((PTR__sch_istable_0006df70[(uint)(byte)*input_line_pointer * 2] & 4) == 0) {\n    cVar2 = get_symbol_name(&name);\n    s = symbol_find_or_make(name);\n    restore_line_pointer(cVar2);\nLAB_0003294e:\n    if (*input_line_pointer != ',') goto LAB_0003295d;\nLAB_00032a5c:\n    input_line_pointer = input_line_pointer + 1;\n    oVar8 = get_absolute_expr(&exp);\n    iVar4 = S_IS_DEFINED(s);\n    if ((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)) goto LAB_00032b60;\n    S_SET_EXTERNAL(s);\n    S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8);\n    mri_common_symbol = s;\n    if (oVar8 != 0) {\n      paVar5 = symbol_get_bfdsym(s);\n      paVar5[1].the_bfd = (bfd *)(int)oVar8;\n      paVar5[1].name = (char *)(int)((ulonglong)oVar8 >> 0x20);\n    }\n  }\n  else {\n    do {\n      pcVar6 = input_line_pointer;\n      input_line_pointer = pcVar6 + 1;\n      c = pcVar6[1];\n    } while ((PTR__sch_istable_0006df70[(uint)c * 2] & 4) != 0);\n    pcVar6[1] = '\0';\n    if (line_label != (symbolS *)0x0) {\n      pcVar6 = S_GET_NAME(line_label);\n      sVar3 = strlen(pcVar6);\n      pcVar6 = (char *)xmalloc(input_line_pointer + ((sVar3 + 1) - (int)name));\n      pcVar7 = S_GET_NAME(line_label);\n      sprintf(pcVar6,"%s%s",name,pcVar7);\n      name = pcVar6;\n      s = symbol_find_or_make(pcVar6);\n      restore_line_pointer(c);\n      free(pcVar6);\n      goto LAB_0003294e;\n    }\n    s = symbol_find_or_make(name);\n    restore_line_pointer(c);\n    if (*input_line_pointer == ',') goto LAB_00032a5c;\nLAB_0003295d:\n    iVar4 = S_IS_DEFINED(s);\n    if ((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)) {\nLAB_00032b60:\n      pcVar6 = S_GET_NAME(s);\n      pcVar7 = (char *)dcgettext(0,"symbol `%s\' is already defined",5);\n      as_bad(pcVar7,pcVar6);\n      ignore_rest_of_line();\n      goto LAB_00032a10;\n    }\n    S_SET_EXTERNAL(s);\n    S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8);\n    mri_common_symbol = s;\n  }\n  if (line_label != (symbolS *)0x0) {\n    exp._16_1_ = 3;\n    exp.X_add_number._0_4_ = 0;\n    exp.X_add_number._4_4_ = 0;\n    exp.X_add_symbol = s;\n    symbol_set_value_expression(line_label,&exp);\n    symbol_set_frag(line_label,(fragS *)PTR_zero_address_frag_0006df6c);\n    S_SET_SEGMENT(line_label,expr_section);\n  }\n  pcVar6 = input_line_pointer;\n  if ((*input_line_pointer == ',') &&\n     (pcVar6 = input_line_pointer + 2, input_line_pointer[2] == ',')) {\n    pcVar6 = input_line_pointer + 4;\n  }\n  input_line_pointer = pcVar6;\n  demand_empty_rest_of_line();\nLAB_00032a10:\n  mri_comment_end((char *)stop,(int)(char)bVar1);\n  return;\n}\n\n" comment comment (function_definition "void s_mri_common(int small)\n\n{\n  byte bVar1;\n  byte c;\n  char cVar2;\n  size_t sVar3;\n  int iVar4;\n  asymbol *paVar5;\n  symbolS *s;\n  char *pcVar6;\n  char *pcVar7;\n  byte *stop;\n  offsetT oVar8;\n  char *name;\n  expressionS exp;\n  \n  if (flag_mri == 0) {\n    s_comm_internal(0,(_func_symbolS_ptr_int_symbolS_ptr_addressT *)0x0);\n    return;\n  }\n  bVar1 = *input_line_pointer;\n  cVar2 = is_end_of_line[bVar1];\n  stop = (byte *)input_line_pointer;\n  while (cVar2 == '\0') {\n    stop = stop + 1;\n    bVar1 = *stop;\n    cVar2 = is_end_of_line[bVar1];\n  }\n  *stop = 0;\n  if (*input_line_pointer == ' ') {\n    input_line_pointer = input_line_pointer + 1;\n  }\n  name = input_line_pointer;\n  if ((PTR__sch_istable_0006df70[(uint)(byte)*input_line_pointer * 2] & 4) == 0) {\n    cVar2 = get_symbol_name(&name);\n    s = symbol_find_or_make(name);\n    restore_line_pointer(cVar2);\nLAB_0003294e:\n    if (*input_line_pointer != ',') goto LAB_0003295d;\nLAB_00032a5c:\n    input_line_pointer = input_line_pointer + 1;\n    oVar8 = get_absolute_expr(&exp);\n    iVar4 = S_IS_DEFINED(s);\n    if ((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)) goto LAB_00032b60;\n    S_SET_EXTERNAL(s);\n    S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8);\n    mri_common_symbol = s;\n    if (oVar8 != 0) {\n      paVar5 = symbol_get_bfdsym(s);\n      paVar5[1].the_bfd = (bfd *)(int)oVar8;\n      paVar5[1].name = (char *)(int)((ulonglong)oVar8 >> 0x20);\n    }\n  }\n  else {\n    do {\n      pcVar6 = input_line_pointer;\n      input_line_pointer = pcVar6 + 1;\n      c = pcVar6[1];\n    } while ((PTR__sch_istable_0006df70[(uint)c * 2] & 4) != 0);\n    pcVar6[1] = '\0';\n    if (line_label != (symbolS *)0x0) {\n      pcVar6 = S_GET_NAME(line_label);\n      sVar3 = strlen(pcVar6);\n      pcVar6 = (char *)xmalloc(input_line_pointer + ((sVar3 + 1) - (int)name));\n      pcVar7 = S_GET_NAME(line_label);\n      sprintf(pcVar6,"%s%s",name,pcVar7);\n      name = pcVar6;\n      s = symbol_find_or_make(pcVar6);\n      restore_line_pointer(c);\n      free(pcVar6);\n      goto LAB_0003294e;\n    }\n    s = symbol_find_or_make(name);\n    restore_line_pointer(c);\n    if (*input_line_pointer == ',') goto LAB_00032a5c;\nLAB_0003295d:\n    iVar4 = S_IS_DEFINED(s);\n    if ((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)) {\nLAB_00032b60:\n      pcVar6 = S_GET_NAME(s);\n      pcVar7 = (char *)dcgettext(0,"symbol `%s\' is already defined",5);\n      as_bad(pcVar7,pcVar6);\n      ignore_rest_of_line();\n      goto LAB_00032a10;\n    }\n    S_SET_EXTERNAL(s);\n    S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8);\n    mri_common_symbol = s;\n  }\n  if (line_label != (symbolS *)0x0) {\n    exp._16_1_ = 3;\n    exp.X_add_number._0_4_ = 0;\n    exp.X_add_number._4_4_ = 0;\n    exp.X_add_symbol = s;\n    symbol_set_value_expression(line_label,&exp);\n    symbol_set_frag(line_label,(fragS *)PTR_zero_address_frag_0006df6c);\n    S_SET_SEGMENT(line_label,expr_section);\n  }\n  pcVar6 = input_line_pointer;\n  if ((*input_line_pointer == ',') &&\n     (pcVar6 = input_line_pointer + 2, input_line_pointer[2] == ',')) {\n    pcVar6 = input_line_pointer + 4;\n  }\n  input_line_pointer = pcVar6;\n  demand_empty_rest_of_line();\nLAB_00032a10:\n  mri_comment_end((char *)stop,(int)(char)bVar1);\n  return;\n}" primitive_type (function_declarator "s_mri_common(int small)" identifier (parameter_list "(int small)" ( (parameter_declaration "int small" primitive_type identifier) ))) (compound_statement "{\n  byte bVar1;\n  byte c;\n  char cVar2;\n  size_t sVar3;\n  int iVar4;\n  asymbol *paVar5;\n  symbolS *s;\n  char *pcVar6;\n  char *pcVar7;\n  byte *stop;\n  offsetT oVar8;\n  char *name;\n  expressionS exp;\n  \n  if (flag_mri == 0) {\n    s_comm_internal(0,(_func_symbolS_ptr_int_symbolS_ptr_addressT *)0x0);\n    return;\n  }\n  bVar1 = *input_line_pointer;\n  cVar2 = is_end_of_line[bVar1];\n  stop = (byte *)input_line_pointer;\n  while (cVar2 == '\0') {\n    stop = stop + 1;\n    bVar1 = *stop;\n    cVar2 = is_end_of_line[bVar1];\n  }\n  *stop = 0;\n  if (*input_line_pointer == ' ') {\n    input_line_pointer = input_line_pointer + 1;\n  }\n  name = input_line_pointer;\n  if ((PTR__sch_istable_0006df70[(uint)(byte)*input_line_pointer * 2] & 4) == 0) {\n    cVar2 = get_symbol_name(&name);\n    s = symbol_find_or_make(name);\n    restore_line_pointer(cVar2);\nLAB_0003294e:\n    if (*input_line_pointer != ',') goto LAB_0003295d;\nLAB_00032a5c:\n    input_line_pointer = input_line_pointer + 1;\n    oVar8 = get_absolute_expr(&exp);\n    iVar4 = S_IS_DEFINED(s);\n    if ((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)) goto LAB_00032b60;\n    S_SET_EXTERNAL(s);\n    S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8);\n    mri_common_symbol = s;\n    if (oVar8 != 0) {\n      paVar5 = symbol_get_bfdsym(s);\n      paVar5[1].the_bfd = (bfd *)(int)oVar8;\n      paVar5[1].name = (char *)(int)((ulonglong)oVar8 >> 0x20);\n    }\n  }\n  else {\n    do {\n      pcVar6 = input_line_pointer;\n      input_line_pointer = pcVar6 + 1;\n      c = pcVar6[1];\n    } while ((PTR__sch_istable_0006df70[(uint)c * 2] & 4) != 0);\n    pcVar6[1] = '\0';\n    if (line_label != (symbolS *)0x0) {\n      pcVar6 = S_GET_NAME(line_label);\n      sVar3 = strlen(pcVar6);\n      pcVar6 = (char *)xmalloc(input_line_pointer + ((sVar3 + 1) - (int)name));\n      pcVar7 = S_GET_NAME(line_label);\n      sprintf(pcVar6,"%s%s",name,pcVar7);\n      name = pcVar6;\n      s = symbol_find_or_make(pcVar6);\n      restore_line_pointer(c);\n      free(pcVar6);\n      goto LAB_0003294e;\n    }\n    s = symbol_find_or_make(name);\n    restore_line_pointer(c);\n    if (*input_line_pointer == ',') goto LAB_00032a5c;\nLAB_0003295d:\n    iVar4 = S_IS_DEFINED(s);\n    if ((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)) {\nLAB_00032b60:\n      pcVar6 = S_GET_NAME(s);\n      pcVar7 = (char *)dcgettext(0,"symbol `%s\' is already defined",5);\n      as_bad(pcVar7,pcVar6);\n      ignore_rest_of_line();\n      goto LAB_00032a10;\n    }\n    S_SET_EXTERNAL(s);\n    S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8);\n    mri_common_symbol = s;\n  }\n  if (line_label != (symbolS *)0x0) {\n    exp._16_1_ = 3;\n    exp.X_add_number._0_4_ = 0;\n    exp.X_add_number._4_4_ = 0;\n    exp.X_add_symbol = s;\n    symbol_set_value_expression(line_label,&exp);\n    symbol_set_frag(line_label,(fragS *)PTR_zero_address_frag_0006df6c);\n    S_SET_SEGMENT(line_label,expr_section);\n  }\n  pcVar6 = input_line_pointer;\n  if ((*input_line_pointer == ',') &&\n     (pcVar6 = input_line_pointer + 2, input_line_pointer[2] == ',')) {\n    pcVar6 = input_line_pointer + 4;\n  }\n  input_line_pointer = pcVar6;\n  demand_empty_rest_of_line();\nLAB_00032a10:\n  mri_comment_end((char *)stop,(int)(char)bVar1);\n  return;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "byte c;" type_identifier identifier ;) (declaration "char cVar2;" primitive_type identifier ;) (declaration "size_t sVar3;" primitive_type identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "asymbol *paVar5;" type_identifier (pointer_declarator "*paVar5" * identifier) ;) (declaration "symbolS *s;" type_identifier (pointer_declarator "*s" * identifier) ;) (declaration "char *pcVar6;" primitive_type (pointer_declarator "*pcVar6" * identifier) ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "byte *stop;" type_identifier (pointer_declarator "*stop" * identifier) ;) (declaration "offsetT oVar8;" type_identifier identifier ;) (declaration "char *name;" primitive_type (pointer_declarator "*name" * identifier) ;) (declaration "expressionS exp;" type_identifier identifier ;) (if_statement "if (flag_mri == 0) {\n    s_comm_internal(0,(_func_symbolS_ptr_int_symbolS_ptr_addressT *)0x0);\n    return;\n  }" if (parenthesized_expression "(flag_mri == 0)" ( (binary_expression "flag_mri == 0" identifier == number_literal) )) (compound_statement "{\n    s_comm_internal(0,(_func_symbolS_ptr_int_symbolS_ptr_addressT *)0x0);\n    return;\n  }" { (expression_statement "s_comm_internal(0,(_func_symbolS_ptr_int_symbolS_ptr_addressT *)0x0);" (call_expression "s_comm_internal(0,(_func_symbolS_ptr_int_symbolS_ptr_addressT *)0x0)" identifier (argument_list "(0,(_func_symbolS_ptr_int_symbolS_ptr_addressT *)0x0)" ( number_literal , (cast_expression "(_func_symbolS_ptr_int_symbolS_ptr_addressT *)0x0" ( (type_descriptor "_func_symbolS_ptr_int_symbolS_ptr_addressT *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal) ))) ;) (return_statement "return;" return ;) })) (expression_statement "bVar1 = *input_line_pointer;" (assignment_expression "bVar1 = *input_line_pointer" identifier = (pointer_expression "*input_line_pointer" * identifier)) ;) (expression_statement "cVar2 = is_end_of_line[bVar1];" (assignment_expression "cVar2 = is_end_of_line[bVar1]" identifier = (subscript_expression "is_end_of_line[bVar1]" 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 (cVar2 == '\0') {\n    stop = stop + 1;\n    bVar1 = *stop;\n    cVar2 = is_end_of_line[bVar1];\n  }" while (parenthesized_expression "(cVar2 == '\0')" ( (binary_expression "cVar2 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    stop = stop + 1;\n    bVar1 = *stop;\n    cVar2 = is_end_of_line[bVar1];\n  }" { (expression_statement "stop = stop + 1;" (assignment_expression "stop = stop + 1" identifier = (binary_expression "stop + 1" identifier + number_literal)) ;) (expression_statement "bVar1 = *stop;" (assignment_expression "bVar1 = *stop" identifier = (pointer_expression "*stop" * identifier)) ;) (expression_statement "cVar2 = is_end_of_line[bVar1];" (assignment_expression "cVar2 = is_end_of_line[bVar1]" identifier = (subscript_expression "is_end_of_line[bVar1]" identifier [ identifier ])) ;) })) (expression_statement "*stop = 0;" (assignment_expression "*stop = 0" (pointer_expression "*stop" * identifier) = number_literal) ;) (if_statement "if (*input_line_pointer == ' ') {\n    input_line_pointer = input_line_pointer + 1;\n  }" if (parenthesized_expression "(*input_line_pointer == ' ')" ( (binary_expression "*input_line_pointer == ' '" (pointer_expression "*input_line_pointer" * identifier) == (char_literal "' '" ' character ')) )) (compound_statement "{\n    input_line_pointer = input_line_pointer + 1;\n  }" { (expression_statement "input_line_pointer = input_line_pointer + 1;" (assignment_expression "input_line_pointer = input_line_pointer + 1" identifier = (binary_expression "input_line_pointer + 1" identifier + number_literal)) ;) })) (expression_statement "name = input_line_pointer;" (assignment_expression "name = input_line_pointer" identifier = identifier) ;) (if_statement "if ((PTR__sch_istable_0006df70[(uint)(byte)*input_line_pointer * 2] & 4) == 0) {\n    cVar2 = get_symbol_name(&name);\n    s = symbol_find_or_make(name);\n    restore_line_pointer(cVar2);\nLAB_0003294e:\n    if (*input_line_pointer != ',') goto LAB_0003295d;\nLAB_00032a5c:\n    input_line_pointer = input_line_pointer + 1;\n    oVar8 = get_absolute_expr(&exp);\n    iVar4 = S_IS_DEFINED(s);\n    if ((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)) goto LAB_00032b60;\n    S_SET_EXTERNAL(s);\n    S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8);\n    mri_common_symbol = s;\n    if (oVar8 != 0) {\n      paVar5 = symbol_get_bfdsym(s);\n      paVar5[1].the_bfd = (bfd *)(int)oVar8;\n      paVar5[1].name = (char *)(int)((ulonglong)oVar8 >> 0x20);\n    }\n  }\n  else {\n    do {\n      pcVar6 = input_line_pointer;\n      input_line_pointer = pcVar6 + 1;\n      c = pcVar6[1];\n    } while ((PTR__sch_istable_0006df70[(uint)c * 2] & 4) != 0);\n    pcVar6[1] = '\0';\n    if (line_label != (symbolS *)0x0) {\n      pcVar6 = S_GET_NAME(line_label);\n      sVar3 = strlen(pcVar6);\n      pcVar6 = (char *)xmalloc(input_line_pointer + ((sVar3 + 1) - (int)name));\n      pcVar7 = S_GET_NAME(line_label);\n      sprintf(pcVar6,"%s%s",name,pcVar7);\n      name = pcVar6;\n      s = symbol_find_or_make(pcVar6);\n      restore_line_pointer(c);\n      free(pcVar6);\n      goto LAB_0003294e;\n    }\n    s = symbol_find_or_make(name);\n    restore_line_pointer(c);\n    if (*input_line_pointer == ',') goto LAB_00032a5c;\nLAB_0003295d:\n    iVar4 = S_IS_DEFINED(s);\n    if ((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)) {\nLAB_00032b60:\n      pcVar6 = S_GET_NAME(s);\n      pcVar7 = (char *)dcgettext(0,"symbol `%s\' is already defined",5);\n      as_bad(pcVar7,pcVar6);\n      ignore_rest_of_line();\n      goto LAB_00032a10;\n    }\n    S_SET_EXTERNAL(s);\n    S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8);\n    mri_common_symbol = s;\n  }" if (parenthesized_expression "((PTR__sch_istable_0006df70[(uint)(byte)*input_line_pointer * 2] & 4) == 0)" ( (binary_expression "(PTR__sch_istable_0006df70[(uint)(byte)*input_line_pointer * 2] & 4) == 0" (parenthesized_expression "(PTR__sch_istable_0006df70[(uint)(byte)*input_line_pointer * 2] & 4)" ( (binary_expression "PTR__sch_istable_0006df70[(uint)(byte)*input_line_pointer * 2] & 4" (subscript_expression "PTR__sch_istable_0006df70[(uint)(byte)*input_line_pointer * 2]" identifier [ (binary_expression "(uint)(byte)*input_line_pointer * 2" (binary_expression "(uint)(byte)*input_line_pointer" (call_expression "(uint)(byte)" (parenthesized_expression "(uint)" ( identifier )) (argument_list "(byte)" ( identifier ))) * identifier) * number_literal) ]) & number_literal) )) == number_literal) )) (compound_statement "{\n    cVar2 = get_symbol_name(&name);\n    s = symbol_find_or_make(name);\n    restore_line_pointer(cVar2);\nLAB_0003294e:\n    if (*input_line_pointer != ',') goto LAB_0003295d;\nLAB_00032a5c:\n    input_line_pointer = input_line_pointer + 1;\n    oVar8 = get_absolute_expr(&exp);\n    iVar4 = S_IS_DEFINED(s);\n    if ((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)) goto LAB_00032b60;\n    S_SET_EXTERNAL(s);\n    S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8);\n    mri_common_symbol = s;\n    if (oVar8 != 0) {\n      paVar5 = symbol_get_bfdsym(s);\n      paVar5[1].the_bfd = (bfd *)(int)oVar8;\n      paVar5[1].name = (char *)(int)((ulonglong)oVar8 >> 0x20);\n    }\n  }" { (expression_statement "cVar2 = get_symbol_name(&name);" (assignment_expression "cVar2 = get_symbol_name(&name)" identifier = (call_expression "get_symbol_name(&name)" identifier (argument_list "(&name)" ( (pointer_expression "&name" & identifier) )))) ;) (expression_statement "s = symbol_find_or_make(name);" (assignment_expression "s = symbol_find_or_make(name)" identifier = (call_expression "symbol_find_or_make(name)" identifier (argument_list "(name)" ( identifier )))) ;) (expression_statement "restore_line_pointer(cVar2);" (call_expression "restore_line_pointer(cVar2)" identifier (argument_list "(cVar2)" ( identifier ))) ;) (labeled_statement "LAB_0003294e:\n    if (*input_line_pointer != ',') goto LAB_0003295d;" statement_identifier : (if_statement "if (*input_line_pointer != ',') goto LAB_0003295d;" if (parenthesized_expression "(*input_line_pointer != ',')" ( (binary_expression "*input_line_pointer != ','" (pointer_expression "*input_line_pointer" * identifier) != (char_literal "','" ' character ')) )) (goto_statement "goto LAB_0003295d;" goto statement_identifier ;))) (labeled_statement "LAB_00032a5c:\n    input_line_pointer = input_line_pointer + 1;" statement_identifier : (expression_statement "input_line_pointer = input_line_pointer + 1;" (assignment_expression "input_line_pointer = input_line_pointer + 1" identifier = (binary_expression "input_line_pointer + 1" identifier + number_literal)) ;)) (expression_statement "oVar8 = get_absolute_expr(&exp);" (assignment_expression "oVar8 = get_absolute_expr(&exp)" identifier = (call_expression "get_absolute_expr(&exp)" identifier (argument_list "(&exp)" ( (pointer_expression "&exp" & identifier) )))) ;) (expression_statement "iVar4 = S_IS_DEFINED(s);" (assignment_expression "iVar4 = S_IS_DEFINED(s)" identifier = (call_expression "S_IS_DEFINED(s)" identifier (argument_list "(s)" ( identifier )))) ;) (if_statement "if ((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)) goto LAB_00032b60;" if (parenthesized_expression "((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0))" ( (binary_expression "(iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)" (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar4 = S_IS_COMMON(s), iVar4 == 0)" ( (comma_expression "iVar4 = S_IS_COMMON(s), iVar4 == 0" (assignment_expression "iVar4 = S_IS_COMMON(s)" identifier = (call_expression "S_IS_COMMON(s)" identifier (argument_list "(s)" ( identifier )))) , (binary_expression "iVar4 == 0" identifier == number_literal)) ))) )) (goto_statement "goto LAB_00032b60;" goto statement_identifier ;)) (expression_statement "S_SET_EXTERNAL(s);" (call_expression "S_SET_EXTERNAL(s)" identifier (argument_list "(s)" ( identifier ))) ;) (expression_statement "S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8);" (call_expression "S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8)" identifier (argument_list "(s,(segT)PTR__bfd_std_section_0006dfa8)" ( identifier , (cast_expression "(segT)PTR__bfd_std_section_0006dfa8" ( (type_descriptor "segT" type_identifier) ) identifier) ))) ;) (expression_statement "mri_common_symbol = s;" (assignment_expression "mri_common_symbol = s" identifier = identifier) ;) (if_statement "if (oVar8 != 0) {\n      paVar5 = symbol_get_bfdsym(s);\n      paVar5[1].the_bfd = (bfd *)(int)oVar8;\n      paVar5[1].name = (char *)(int)((ulonglong)oVar8 >> 0x20);\n    }" if (parenthesized_expression "(oVar8 != 0)" ( (binary_expression "oVar8 != 0" identifier != number_literal) )) (compound_statement "{\n      paVar5 = symbol_get_bfdsym(s);\n      paVar5[1].the_bfd = (bfd *)(int)oVar8;\n      paVar5[1].name = (char *)(int)((ulonglong)oVar8 >> 0x20);\n    }" { (expression_statement "paVar5 = symbol_get_bfdsym(s);" (assignment_expression "paVar5 = symbol_get_bfdsym(s)" identifier = (call_expression "symbol_get_bfdsym(s)" identifier (argument_list "(s)" ( identifier )))) ;) (expression_statement "paVar5[1].the_bfd = (bfd *)(int)oVar8;" (assignment_expression "paVar5[1].the_bfd = (bfd *)(int)oVar8" (field_expression "paVar5[1].the_bfd" (subscript_expression "paVar5[1]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(bfd *)(int)oVar8" ( (type_descriptor "bfd *" type_identifier (abstract_pointer_declarator "*" *)) ) (cast_expression "(int)oVar8" ( (type_descriptor "int" primitive_type) ) identifier))) ;) (expression_statement "paVar5[1].name = (char *)(int)((ulonglong)oVar8 >> 0x20);" (assignment_expression "paVar5[1].name = (char *)(int)((ulonglong)oVar8 >> 0x20)" (field_expression "paVar5[1].name" (subscript_expression "paVar5[1]" identifier [ number_literal ]) . field_identifier) = (cast_expression "(char *)(int)((ulonglong)oVar8 >> 0x20)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (cast_expression "(int)((ulonglong)oVar8 >> 0x20)" ( (type_descriptor "int" primitive_type) ) (parenthesized_expression "((ulonglong)oVar8 >> 0x20)" ( (binary_expression "(ulonglong)oVar8 >> 0x20" (cast_expression "(ulonglong)oVar8" ( (type_descriptor "ulonglong" type_identifier) ) identifier) >> number_literal) ))))) ;) })) }) (else_clause "else {\n    do {\n      pcVar6 = input_line_pointer;\n      input_line_pointer = pcVar6 + 1;\n      c = pcVar6[1];\n    } while ((PTR__sch_istable_0006df70[(uint)c * 2] & 4) != 0);\n    pcVar6[1] = '\0';\n    if (line_label != (symbolS *)0x0) {\n      pcVar6 = S_GET_NAME(line_label);\n      sVar3 = strlen(pcVar6);\n      pcVar6 = (char *)xmalloc(input_line_pointer + ((sVar3 + 1) - (int)name));\n      pcVar7 = S_GET_NAME(line_label);\n      sprintf(pcVar6,"%s%s",name,pcVar7);\n      name = pcVar6;\n      s = symbol_find_or_make(pcVar6);\n      restore_line_pointer(c);\n      free(pcVar6);\n      goto LAB_0003294e;\n    }\n    s = symbol_find_or_make(name);\n    restore_line_pointer(c);\n    if (*input_line_pointer == ',') goto LAB_00032a5c;\nLAB_0003295d:\n    iVar4 = S_IS_DEFINED(s);\n    if ((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)) {\nLAB_00032b60:\n      pcVar6 = S_GET_NAME(s);\n      pcVar7 = (char *)dcgettext(0,"symbol `%s\' is already defined",5);\n      as_bad(pcVar7,pcVar6);\n      ignore_rest_of_line();\n      goto LAB_00032a10;\n    }\n    S_SET_EXTERNAL(s);\n    S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8);\n    mri_common_symbol = s;\n  }" else (compound_statement "{\n    do {\n      pcVar6 = input_line_pointer;\n      input_line_pointer = pcVar6 + 1;\n      c = pcVar6[1];\n    } while ((PTR__sch_istable_0006df70[(uint)c * 2] & 4) != 0);\n    pcVar6[1] = '\0';\n    if (line_label != (symbolS *)0x0) {\n      pcVar6 = S_GET_NAME(line_label);\n      sVar3 = strlen(pcVar6);\n      pcVar6 = (char *)xmalloc(input_line_pointer + ((sVar3 + 1) - (int)name));\n      pcVar7 = S_GET_NAME(line_label);\n      sprintf(pcVar6,"%s%s",name,pcVar7);\n      name = pcVar6;\n      s = symbol_find_or_make(pcVar6);\n      restore_line_pointer(c);\n      free(pcVar6);\n      goto LAB_0003294e;\n    }\n    s = symbol_find_or_make(name);\n    restore_line_pointer(c);\n    if (*input_line_pointer == ',') goto LAB_00032a5c;\nLAB_0003295d:\n    iVar4 = S_IS_DEFINED(s);\n    if ((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)) {\nLAB_00032b60:\n      pcVar6 = S_GET_NAME(s);\n      pcVar7 = (char *)dcgettext(0,"symbol `%s\' is already defined",5);\n      as_bad(pcVar7,pcVar6);\n      ignore_rest_of_line();\n      goto LAB_00032a10;\n    }\n    S_SET_EXTERNAL(s);\n    S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8);\n    mri_common_symbol = s;\n  }" { (do_statement "do {\n      pcVar6 = input_line_pointer;\n      input_line_pointer = pcVar6 + 1;\n      c = pcVar6[1];\n    } while ((PTR__sch_istable_0006df70[(uint)c * 2] & 4) != 0);" do (compound_statement "{\n      pcVar6 = input_line_pointer;\n      input_line_pointer = pcVar6 + 1;\n      c = pcVar6[1];\n    }" { (expression_statement "pcVar6 = input_line_pointer;" (assignment_expression "pcVar6 = input_line_pointer" identifier = identifier) ;) (expression_statement "input_line_pointer = pcVar6 + 1;" (assignment_expression "input_line_pointer = pcVar6 + 1" identifier = (binary_expression "pcVar6 + 1" identifier + number_literal)) ;) (expression_statement "c = pcVar6[1];" (assignment_expression "c = pcVar6[1]" identifier = (subscript_expression "pcVar6[1]" identifier [ number_literal ])) ;) }) while (parenthesized_expression "((PTR__sch_istable_0006df70[(uint)c * 2] & 4) != 0)" ( (binary_expression "(PTR__sch_istable_0006df70[(uint)c * 2] & 4) != 0" (parenthesized_expression "(PTR__sch_istable_0006df70[(uint)c * 2] & 4)" ( (binary_expression "PTR__sch_istable_0006df70[(uint)c * 2] & 4" (subscript_expression "PTR__sch_istable_0006df70[(uint)c * 2]" identifier [ (binary_expression "(uint)c * 2" (cast_expression "(uint)c" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal) ]) & number_literal) )) != number_literal) )) ;) (expression_statement "pcVar6[1] = '\0';" (assignment_expression "pcVar6[1] = '\0'" (subscript_expression "pcVar6[1]" identifier [ number_literal ]) = (char_literal "'\0'" ' escape_sequence ')) ;) (if_statement "if (line_label != (symbolS *)0x0) {\n      pcVar6 = S_GET_NAME(line_label);\n      sVar3 = strlen(pcVar6);\n      pcVar6 = (char *)xmalloc(input_line_pointer + ((sVar3 + 1) - (int)name));\n      pcVar7 = S_GET_NAME(line_label);\n      sprintf(pcVar6,"%s%s",name,pcVar7);\n      name = pcVar6;\n      s = symbol_find_or_make(pcVar6);\n      restore_line_pointer(c);\n      free(pcVar6);\n      goto LAB_0003294e;\n    }" if (parenthesized_expression "(line_label != (symbolS *)0x0)" ( (binary_expression "line_label != (symbolS *)0x0" identifier != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n      pcVar6 = S_GET_NAME(line_label);\n      sVar3 = strlen(pcVar6);\n      pcVar6 = (char *)xmalloc(input_line_pointer + ((sVar3 + 1) - (int)name));\n      pcVar7 = S_GET_NAME(line_label);\n      sprintf(pcVar6,"%s%s",name,pcVar7);\n      name = pcVar6;\n      s = symbol_find_or_make(pcVar6);\n      restore_line_pointer(c);\n      free(pcVar6);\n      goto LAB_0003294e;\n    }" { (expression_statement "pcVar6 = S_GET_NAME(line_label);" (assignment_expression "pcVar6 = S_GET_NAME(line_label)" identifier = (call_expression "S_GET_NAME(line_label)" identifier (argument_list "(line_label)" ( identifier )))) ;) (expression_statement "sVar3 = strlen(pcVar6);" (assignment_expression "sVar3 = strlen(pcVar6)" identifier = (call_expression "strlen(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier )))) ;) (expression_statement "pcVar6 = (char *)xmalloc(input_line_pointer + ((sVar3 + 1) - (int)name));" (assignment_expression "pcVar6 = (char *)xmalloc(input_line_pointer + ((sVar3 + 1) - (int)name))" identifier = (cast_expression "(char *)xmalloc(input_line_pointer + ((sVar3 + 1) - (int)name))" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(input_line_pointer + ((sVar3 + 1) - (int)name))" identifier (argument_list "(input_line_pointer + ((sVar3 + 1) - (int)name))" ( (binary_expression "input_line_pointer + ((sVar3 + 1) - (int)name)" identifier + (parenthesized_expression "((sVar3 + 1) - (int)name)" ( (binary_expression "(sVar3 + 1) - (int)name" (parenthesized_expression "(sVar3 + 1)" ( (binary_expression "sVar3 + 1" identifier + number_literal) )) - (cast_expression "(int)name" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))))) ;) (expression_statement "pcVar7 = S_GET_NAME(line_label);" (assignment_expression "pcVar7 = S_GET_NAME(line_label)" identifier = (call_expression "S_GET_NAME(line_label)" identifier (argument_list "(line_label)" ( identifier )))) ;) (expression_statement "sprintf(pcVar6,"%s%s",name,pcVar7);" (call_expression "sprintf(pcVar6,"%s%s",name,pcVar7)" identifier (argument_list "(pcVar6,"%s%s",name,pcVar7)" ( identifier , (string_literal ""%s%s"" " string_content ") , identifier , identifier ))) ;) (expression_statement "name = pcVar6;" (assignment_expression "name = pcVar6" identifier = identifier) ;) (expression_statement "s = symbol_find_or_make(pcVar6);" (assignment_expression "s = symbol_find_or_make(pcVar6)" identifier = (call_expression "symbol_find_or_make(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier )))) ;) (expression_statement "restore_line_pointer(c);" (call_expression "restore_line_pointer(c)" identifier (argument_list "(c)" ( identifier ))) ;) (expression_statement "free(pcVar6);" (call_expression "free(pcVar6)" identifier (argument_list "(pcVar6)" ( identifier ))) ;) (goto_statement "goto LAB_0003294e;" goto statement_identifier ;) })) (expression_statement "s = symbol_find_or_make(name);" (assignment_expression "s = symbol_find_or_make(name)" identifier = (call_expression "symbol_find_or_make(name)" identifier (argument_list "(name)" ( identifier )))) ;) (expression_statement "restore_line_pointer(c);" (call_expression "restore_line_pointer(c)" identifier (argument_list "(c)" ( identifier ))) ;) (if_statement "if (*input_line_pointer == ',') goto LAB_00032a5c;" if (parenthesized_expression "(*input_line_pointer == ',')" ( (binary_expression "*input_line_pointer == ','" (pointer_expression "*input_line_pointer" * identifier) == (char_literal "','" ' character ')) )) (goto_statement "goto LAB_00032a5c;" goto statement_identifier ;)) (labeled_statement "LAB_0003295d:\n    iVar4 = S_IS_DEFINED(s);" statement_identifier : (expression_statement "iVar4 = S_IS_DEFINED(s);" (assignment_expression "iVar4 = S_IS_DEFINED(s)" identifier = (call_expression "S_IS_DEFINED(s)" identifier (argument_list "(s)" ( identifier )))) ;)) (if_statement "if ((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)) {\nLAB_00032b60:\n      pcVar6 = S_GET_NAME(s);\n      pcVar7 = (char *)dcgettext(0,"symbol `%s\' is already defined",5);\n      as_bad(pcVar7,pcVar6);\n      ignore_rest_of_line();\n      goto LAB_00032a10;\n    }" if (parenthesized_expression "((iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0))" ( (binary_expression "(iVar4 != 0) && (iVar4 = S_IS_COMMON(s), iVar4 == 0)" (parenthesized_expression "(iVar4 != 0)" ( (binary_expression "iVar4 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar4 = S_IS_COMMON(s), iVar4 == 0)" ( (comma_expression "iVar4 = S_IS_COMMON(s), iVar4 == 0" (assignment_expression "iVar4 = S_IS_COMMON(s)" identifier = (call_expression "S_IS_COMMON(s)" identifier (argument_list "(s)" ( identifier )))) , (binary_expression "iVar4 == 0" identifier == number_literal)) ))) )) (compound_statement "{\nLAB_00032b60:\n      pcVar6 = S_GET_NAME(s);\n      pcVar7 = (char *)dcgettext(0,"symbol `%s\' is already defined",5);\n      as_bad(pcVar7,pcVar6);\n      ignore_rest_of_line();\n      goto LAB_00032a10;\n    }" { (labeled_statement "LAB_00032b60:\n      pcVar6 = S_GET_NAME(s);" statement_identifier : (expression_statement "pcVar6 = S_GET_NAME(s);" (assignment_expression "pcVar6 = S_GET_NAME(s)" identifier = (call_expression "S_GET_NAME(s)" identifier (argument_list "(s)" ( identifier )))) ;)) (expression_statement "pcVar7 = (char *)dcgettext(0,"symbol `%s\' is already defined",5);" (assignment_expression "pcVar7 = (char *)dcgettext(0,"symbol `%s\' is already defined",5)" identifier = (cast_expression "(char *)dcgettext(0,"symbol `%s\' is already defined",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext(0,"symbol `%s\' is already defined",5)" identifier (argument_list "(0,"symbol `%s\' is already defined",5)" ( number_literal , (string_literal ""symbol `%s\' is already defined"" " string_content escape_sequence string_content ") , number_literal ))))) ;) (expression_statement "as_bad(pcVar7,pcVar6);" (call_expression "as_bad(pcVar7,pcVar6)" identifier (argument_list "(pcVar7,pcVar6)" ( identifier , identifier ))) ;) (expression_statement "ignore_rest_of_line();" (call_expression "ignore_rest_of_line()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_00032a10;" goto statement_identifier ;) })) (expression_statement "S_SET_EXTERNAL(s);" (call_expression "S_SET_EXTERNAL(s)" identifier (argument_list "(s)" ( identifier ))) ;) (expression_statement "S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8);" (call_expression "S_SET_SEGMENT(s,(segT)PTR__bfd_std_section_0006dfa8)" identifier (argument_list "(s,(segT)PTR__bfd_std_section_0006dfa8)" ( identifier , (cast_expression "(segT)PTR__bfd_std_section_0006dfa8" ( (type_descriptor "segT" type_identifier) ) identifier) ))) ;) (expression_statement "mri_common_symbol = s;" (assignment_expression "mri_common_symbol = s" identifier = identifier) ;) }))) (if_statement "if (line_label != (symbolS *)0x0) {\n    exp._16_1_ = 3;\n    exp.X_add_number._0_4_ = 0;\n    exp.X_add_number._4_4_ = 0;\n    exp.X_add_symbol = s;\n    symbol_set_value_expression(line_label,&exp);\n    symbol_set_frag(line_label,(fragS *)PTR_zero_address_frag_0006df6c);\n    S_SET_SEGMENT(line_label,expr_section);\n  }" if (parenthesized_expression "(line_label != (symbolS *)0x0)" ( (binary_expression "line_label != (symbolS *)0x0" identifier != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n    exp._16_1_ = 3;\n    exp.X_add_number._0_4_ = 0;\n    exp.X_add_number._4_4_ = 0;\n    exp.X_add_symbol = s;\n    symbol_set_value_expression(line_label,&exp);\n    symbol_set_frag(line_label,(fragS *)PTR_zero_address_frag_0006df6c);\n    S_SET_SEGMENT(line_label,expr_section);\n  }" { (expression_statement "exp._16_1_ = 3;" (assignment_expression "exp._16_1_ = 3" (field_expression "exp._16_1_" identifier . field_identifier) = number_literal) ;) (expression_statement "exp.X_add_number._0_4_ = 0;" (assignment_expression "exp.X_add_number._0_4_ = 0" (field_expression "exp.X_add_number._0_4_" (field_expression "exp.X_add_number" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "exp.X_add_number._4_4_ = 0;" (assignment_expression "exp.X_add_number._4_4_ = 0" (field_expression "exp.X_add_number._4_4_" (field_expression "exp.X_add_number" identifier . field_identifier) . field_identifier) = number_literal) ;) (expression_statement "exp.X_add_symbol = s;" (assignment_expression "exp.X_add_symbol = s" (field_expression "exp.X_add_symbol" identifier . field_identifier) = identifier) ;) (expression_statement "symbol_set_value_expression(line_label,&exp);" (call_expression "symbol_set_value_expression(line_label,&exp)" identifier (argument_list "(line_label,&exp)" ( identifier , (pointer_expression "&exp" & identifier) ))) ;) (expression_statement "symbol_set_frag(line_label,(fragS *)PTR_zero_address_frag_0006df6c);" (call_expression "symbol_set_frag(line_label,(fragS *)PTR_zero_address_frag_0006df6c)" identifier (argument_list "(line_label,(fragS *)PTR_zero_address_frag_0006df6c)" ( identifier , (cast_expression "(fragS *)PTR_zero_address_frag_0006df6c" ( (type_descriptor "fragS *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "S_SET_SEGMENT(line_label,expr_section);" (call_expression "S_SET_SEGMENT(line_label,expr_section)" identifier (argument_list "(line_label,expr_section)" ( identifier , identifier ))) ;) })) (expression_statement "pcVar6 = input_line_pointer;" (assignment_expression "pcVar6 = input_line_pointer" identifier = identifier) ;) (if_statement "if ((*input_line_pointer == ',') &&\n     (pcVar6 = input_line_pointer + 2, input_line_pointer[2] == ',')) {\n    pcVar6 = input_line_pointer + 4;\n  }" if (parenthesized_expression "((*input_line_pointer == ',') &&\n     (pcVar6 = input_line_pointer + 2, input_line_pointer[2] == ','))" ( (binary_expression "(*input_line_pointer == ',') &&\n     (pcVar6 = input_line_pointer + 2, input_line_pointer[2] == ',')" (parenthesized_expression "(*input_line_pointer == ',')" ( (binary_expression "*input_line_pointer == ','" (pointer_expression "*input_line_pointer" * identifier) == (char_literal "','" ' character ')) )) && (parenthesized_expression "(pcVar6 = input_line_pointer + 2, input_line_pointer[2] == ',')" ( (comma_expression "pcVar6 = input_line_pointer + 2, input_line_pointer[2] == ','" (assignment_expression "pcVar6 = input_line_pointer + 2" identifier = (binary_expression "input_line_pointer + 2" identifier + number_literal)) , (binary_expression "input_line_pointer[2] == ','" (subscript_expression "input_line_pointer[2]" identifier [ number_literal ]) == (char_literal "','" ' character '))) ))) )) (compound_statement "{\n    pcVar6 = input_line_pointer + 4;\n  }" { (expression_statement "pcVar6 = input_line_pointer + 4;" (assignment_expression "pcVar6 = input_line_pointer + 4" identifier = (binary_expression "input_line_pointer + 4" identifier + number_literal)) ;) })) (expression_statement "input_line_pointer = pcVar6;" (assignment_expression "input_line_pointer = pcVar6" identifier = identifier) ;) (expression_statement "demand_empty_rest_of_line();" (call_expression "demand_empty_rest_of_line()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_00032a10:\n  mri_comment_end((char *)stop,(int)(char)bVar1);" statement_identifier : (expression_statement "mri_comment_end((char *)stop,(int)(char)bVar1);" (call_expression "mri_comment_end((char *)stop,(int)(char)bVar1)" identifier (argument_list "((char *)stop,(int)(char)bVar1)" ( (cast_expression "(char *)stop" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (cast_expression "(int)(char)bVar1" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar1" ( (type_descriptor "char" primitive_type) ) identifier)) ))) ;)) (return_statement "return;" return ;) })))
(translation_unit "void FUN_00032820(void)\n\n{\n  byte bVar1;\n  byte bVar2;\n  char cVar3;\n  char *__s;\n  size_t sVar4;\n  byte *pbVar5;\n  int iVar6;\n  undefined4 uVar7;\n  undefined4 uVar8;\n  byte *pbVar9;\n  longlong lVar10;\n  byte *local_34;\n  undefined4 local_30 [2];\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined1 local_20;\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x32829;\n  if (DAT_00077768 == 0) {\n    FUN_00032430(0,0);\n    return;\n  }\n  bVar1 = *DAT_00077838;\n  cVar3 = (&DAT_0006e2e0)[bVar1];\n  pbVar9 = DAT_00077838;\n  while (cVar3 == '\0') {\n    pbVar9 = pbVar9 + 1;\n    bVar1 = *pbVar9;\n    cVar3 = (&DAT_0006e2e0)[bVar1];\n  }\n  *pbVar9 = 0;\n  if (*DAT_00077838 == 0x20) {\n    DAT_00077838 = DAT_00077838 + 1;\n  }\n  local_34 = DAT_00077838;\n  if ((PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0) {\n    cVar3 = FUN_000221e0(&local_34);\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)cVar3);\nLAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;\nLAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;\n    lVar10 = FUN_0002c430();\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n    if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }\n  }\n  else {\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }\n  if (DAT_00077828 != 0) {\n    local_20 = 3;\n    local_28 = 0;\n    local_24 = 0;\n    local_30[0] = uVar7;\n    FUN_0003b070(DAT_00077828,local_30);\n    FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);\n    FUN_00038520(DAT_00077828,DAT_00077620);\n  }\n  pbVar5 = DAT_00077838;\n  if ((*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)) {\n    pbVar5 = DAT_00077838 + 4;\n  }\n  DAT_00077838 = pbVar5;\n  FUN_0002e240();\nLAB_00032a10:\n  FUN_0002d9f0(pbVar9,(int)(char)bVar1);\n  return;\n}\n\n" (function_definition "void FUN_00032820(void)\n\n{\n  byte bVar1;\n  byte bVar2;\n  char cVar3;\n  char *__s;\n  size_t sVar4;\n  byte *pbVar5;\n  int iVar6;\n  undefined4 uVar7;\n  undefined4 uVar8;\n  byte *pbVar9;\n  longlong lVar10;\n  byte *local_34;\n  undefined4 local_30 [2];\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined1 local_20;\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x32829;\n  if (DAT_00077768 == 0) {\n    FUN_00032430(0,0);\n    return;\n  }\n  bVar1 = *DAT_00077838;\n  cVar3 = (&DAT_0006e2e0)[bVar1];\n  pbVar9 = DAT_00077838;\n  while (cVar3 == '\0') {\n    pbVar9 = pbVar9 + 1;\n    bVar1 = *pbVar9;\n    cVar3 = (&DAT_0006e2e0)[bVar1];\n  }\n  *pbVar9 = 0;\n  if (*DAT_00077838 == 0x20) {\n    DAT_00077838 = DAT_00077838 + 1;\n  }\n  local_34 = DAT_00077838;\n  if ((PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0) {\n    cVar3 = FUN_000221e0(&local_34);\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)cVar3);\nLAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;\nLAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;\n    lVar10 = FUN_0002c430();\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n    if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }\n  }\n  else {\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }\n  if (DAT_00077828 != 0) {\n    local_20 = 3;\n    local_28 = 0;\n    local_24 = 0;\n    local_30[0] = uVar7;\n    FUN_0003b070(DAT_00077828,local_30);\n    FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);\n    FUN_00038520(DAT_00077828,DAT_00077620);\n  }\n  pbVar5 = DAT_00077838;\n  if ((*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)) {\n    pbVar5 = DAT_00077838 + 4;\n  }\n  DAT_00077838 = pbVar5;\n  FUN_0002e240();\nLAB_00032a10:\n  FUN_0002d9f0(pbVar9,(int)(char)bVar1);\n  return;\n}" primitive_type (function_declarator "FUN_00032820(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  byte bVar1;\n  byte bVar2;\n  char cVar3;\n  char *__s;\n  size_t sVar4;\n  byte *pbVar5;\n  int iVar6;\n  undefined4 uVar7;\n  undefined4 uVar8;\n  byte *pbVar9;\n  longlong lVar10;\n  byte *local_34;\n  undefined4 local_30 [2];\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined1 local_20;\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x32829;\n  if (DAT_00077768 == 0) {\n    FUN_00032430(0,0);\n    return;\n  }\n  bVar1 = *DAT_00077838;\n  cVar3 = (&DAT_0006e2e0)[bVar1];\n  pbVar9 = DAT_00077838;\n  while (cVar3 == '\0') {\n    pbVar9 = pbVar9 + 1;\n    bVar1 = *pbVar9;\n    cVar3 = (&DAT_0006e2e0)[bVar1];\n  }\n  *pbVar9 = 0;\n  if (*DAT_00077838 == 0x20) {\n    DAT_00077838 = DAT_00077838 + 1;\n  }\n  local_34 = DAT_00077838;\n  if ((PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0) {\n    cVar3 = FUN_000221e0(&local_34);\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)cVar3);\nLAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;\nLAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;\n    lVar10 = FUN_0002c430();\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n    if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }\n  }\n  else {\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }\n  if (DAT_00077828 != 0) {\n    local_20 = 3;\n    local_28 = 0;\n    local_24 = 0;\n    local_30[0] = uVar7;\n    FUN_0003b070(DAT_00077828,local_30);\n    FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);\n    FUN_00038520(DAT_00077828,DAT_00077620);\n  }\n  pbVar5 = DAT_00077838;\n  if ((*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)) {\n    pbVar5 = DAT_00077838 + 4;\n  }\n  DAT_00077838 = pbVar5;\n  FUN_0002e240();\nLAB_00032a10:\n  FUN_0002d9f0(pbVar9,(int)(char)bVar1);\n  return;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "byte bVar2;" type_identifier identifier ;) (declaration "char cVar3;" primitive_type identifier ;) (declaration "char *__s;" primitive_type (pointer_declarator "*__s" * identifier) ;) (declaration "size_t sVar4;" primitive_type identifier ;) (declaration "byte *pbVar5;" type_identifier (pointer_declarator "*pbVar5" * identifier) ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "undefined4 uVar7;" type_identifier identifier ;) (declaration "undefined4 uVar8;" type_identifier identifier ;) (declaration "byte *pbVar9;" type_identifier (pointer_declarator "*pbVar9" * identifier) ;) (declaration "longlong lVar10;" type_identifier identifier ;) (declaration "byte *local_34;" type_identifier (pointer_declarator "*local_34" * identifier) ;) (declaration "undefined4 local_30 [2];" type_identifier (array_declarator "local_30 [2]" identifier [ number_literal ]) ;) (declaration "undefined4 local_28;" type_identifier identifier ;) (declaration "undefined4 local_24;" type_identifier identifier ;) (declaration "undefined1 local_20;" type_identifier identifier ;) (declaration "undefined4 uStack_14;" type_identifier identifier ;) (expression_statement "uStack_14 = 0x32829;" (assignment_expression "uStack_14 = 0x32829" identifier = number_literal) ;) (if_statement "if (DAT_00077768 == 0) {\n    FUN_00032430(0,0);\n    return;\n  }" if (parenthesized_expression "(DAT_00077768 == 0)" ( (binary_expression "DAT_00077768 == 0" identifier == number_literal) )) (compound_statement "{\n    FUN_00032430(0,0);\n    return;\n  }" { (expression_statement "FUN_00032430(0,0);" (call_expression "FUN_00032430(0,0)" identifier (argument_list "(0,0)" ( number_literal , number_literal ))) ;) (return_statement "return;" return ;) })) (expression_statement "bVar1 = *DAT_00077838;" (assignment_expression "bVar1 = *DAT_00077838" identifier = (pointer_expression "*DAT_00077838" * identifier)) ;) (expression_statement "cVar3 = (&DAT_0006e2e0)[bVar1];" (assignment_expression "cVar3 = (&DAT_0006e2e0)[bVar1]" identifier = (subscript_expression "(&DAT_0006e2e0)[bVar1]" (parenthesized_expression "(&DAT_0006e2e0)" ( (pointer_expression "&DAT_0006e2e0" & identifier) )) [ identifier ])) ;) (expression_statement "pbVar9 = DAT_00077838;" (assignment_expression "pbVar9 = DAT_00077838" identifier = identifier) ;) (while_statement "while (cVar3 == '\0') {\n    pbVar9 = pbVar9 + 1;\n    bVar1 = *pbVar9;\n    cVar3 = (&DAT_0006e2e0)[bVar1];\n  }" while (parenthesized_expression "(cVar3 == '\0')" ( (binary_expression "cVar3 == '\0'" identifier == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n    pbVar9 = pbVar9 + 1;\n    bVar1 = *pbVar9;\n    cVar3 = (&DAT_0006e2e0)[bVar1];\n  }" { (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" identifier = (binary_expression "pbVar9 + 1" identifier + number_literal)) ;) (expression_statement "bVar1 = *pbVar9;" (assignment_expression "bVar1 = *pbVar9" identifier = (pointer_expression "*pbVar9" * identifier)) ;) (expression_statement "cVar3 = (&DAT_0006e2e0)[bVar1];" (assignment_expression "cVar3 = (&DAT_0006e2e0)[bVar1]" identifier = (subscript_expression "(&DAT_0006e2e0)[bVar1]" (parenthesized_expression "(&DAT_0006e2e0)" ( (pointer_expression "&DAT_0006e2e0" & identifier) )) [ identifier ])) ;) })) (expression_statement "*pbVar9 = 0;" (assignment_expression "*pbVar9 = 0" (pointer_expression "*pbVar9" * identifier) = number_literal) ;) (if_statement "if (*DAT_00077838 == 0x20) {\n    DAT_00077838 = DAT_00077838 + 1;\n  }" if (parenthesized_expression "(*DAT_00077838 == 0x20)" ( (binary_expression "*DAT_00077838 == 0x20" (pointer_expression "*DAT_00077838" * identifier) == number_literal) )) (compound_statement "{\n    DAT_00077838 = DAT_00077838 + 1;\n  }" { (expression_statement "DAT_00077838 = DAT_00077838 + 1;" (assignment_expression "DAT_00077838 = DAT_00077838 + 1" identifier = (binary_expression "DAT_00077838 + 1" identifier + number_literal)) ;) })) (expression_statement "local_34 = DAT_00077838;" (assignment_expression "local_34 = DAT_00077838" identifier = identifier) ;) (if_statement "if ((PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0) {\n    cVar3 = FUN_000221e0(&local_34);\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)cVar3);\nLAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;\nLAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;\n    lVar10 = FUN_0002c430();\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n    if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }\n  }\n  else {\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }" if (parenthesized_expression "((PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0)" ( (binary_expression "(PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0" (parenthesized_expression "(PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4)" ( (binary_expression "PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4" (subscript_expression "PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2]" identifier [ (binary_expression "(uint)*DAT_00077838 * 2" (binary_expression "(uint)*DAT_00077838" (parenthesized_expression "(uint)" ( identifier )) * identifier) * number_literal) ]) & number_literal) )) == number_literal) )) (compound_statement "{\n    cVar3 = FUN_000221e0(&local_34);\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)cVar3);\nLAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;\nLAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;\n    lVar10 = FUN_0002c430();\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n    if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }\n  }" { (expression_statement "cVar3 = FUN_000221e0(&local_34);" (assignment_expression "cVar3 = FUN_000221e0(&local_34)" identifier = (call_expression "FUN_000221e0(&local_34)" identifier (argument_list "(&local_34)" ( (pointer_expression "&local_34" & identifier) )))) ;) (expression_statement "uVar7 = FUN_0003a400(local_34);" (assignment_expression "uVar7 = FUN_0003a400(local_34)" identifier = (call_expression "FUN_0003a400(local_34)" identifier (argument_list "(local_34)" ( identifier )))) ;) (expression_statement "FUN_00024290((int)cVar3);" (call_expression "FUN_00024290((int)cVar3)" identifier (argument_list "((int)cVar3)" ( (cast_expression "(int)cVar3" ( (type_descriptor "int" primitive_type) ) identifier) ))) ;) (labeled_statement "LAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;" statement_identifier : (if_statement "if (*DAT_00077838 != 0x2c) goto LAB_0003295d;" if (parenthesized_expression "(*DAT_00077838 != 0x2c)" ( (binary_expression "*DAT_00077838 != 0x2c" (pointer_expression "*DAT_00077838" * identifier) != number_literal) )) (goto_statement "goto LAB_0003295d;" goto statement_identifier ;))) (labeled_statement "LAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;" statement_identifier : (expression_statement "DAT_00077838 = DAT_00077838 + 1;" (assignment_expression "DAT_00077838 = DAT_00077838 + 1" identifier = (binary_expression "DAT_00077838 + 1" identifier + number_literal)) ;)) (expression_statement "lVar10 = FUN_0002c430();" (assignment_expression "lVar10 = FUN_0002c430()" identifier = (call_expression "FUN_0002c430()" identifier (argument_list "()" ( )))) ;) (expression_statement "iVar6 = FUN_000380e0(uVar7);" (assignment_expression "iVar6 = FUN_000380e0(uVar7)" identifier = (call_expression "FUN_000380e0(uVar7)" identifier (argument_list "(uVar7)" ( identifier )))) ;) (if_statement "if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;" if (parenthesized_expression "((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0))" ( (binary_expression "(iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)" (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar6 = FUN_00038090(uVar7), iVar6 == 0)" ( (comma_expression "iVar6 = FUN_00038090(uVar7), iVar6 == 0" (assignment_expression "iVar6 = FUN_00038090(uVar7)" identifier = (call_expression "FUN_00038090(uVar7)" identifier (argument_list "(uVar7)" ( identifier )))) , (binary_expression "iVar6 == 0" identifier == number_literal)) ))) )) (goto_statement "goto LAB_00032b60;" goto statement_identifier ;)) (expression_statement "FUN_00039df0(uVar7);" (call_expression "FUN_00039df0(uVar7)" identifier (argument_list "(uVar7)" ( identifier ))) ;) (expression_statement "FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);" (call_expression "FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8)" identifier (argument_list "(uVar7,PTR__bfd_std_section_0006dfa8)" ( identifier , identifier ))) ;) (expression_statement "DAT_00077820 = uVar7;" (assignment_expression "DAT_00077820 = uVar7" identifier = identifier) ;) (if_statement "if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }" if (parenthesized_expression "(lVar10 != 0)" ( (binary_expression "lVar10 != 0" identifier != number_literal) )) (compound_statement "{\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }" { (expression_statement "iVar6 = FUN_0003b810(uVar7);" (assignment_expression "iVar6 = FUN_0003b810(uVar7)" identifier = (call_expression "FUN_0003b810(uVar7)" identifier (argument_list "(uVar7)" ( identifier )))) ;) (expression_statement "*(longlong *)(iVar6 + 0x20) = lVar10;" (assignment_expression "*(longlong *)(iVar6 + 0x20) = lVar10" (pointer_expression "*(longlong *)(iVar6 + 0x20)" * (cast_expression "(longlong *)(iVar6 + 0x20)" ( (type_descriptor "longlong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar6 + 0x20)" ( (binary_expression "iVar6 + 0x20" identifier + number_literal) )))) = identifier) ;) })) }) (else_clause "else {\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }" else (compound_statement "{\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }" { (do_statement "do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);" do (compound_statement "{\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    }" { (expression_statement "pbVar5 = DAT_00077838;" (assignment_expression "pbVar5 = DAT_00077838" identifier = identifier) ;) (expression_statement "DAT_00077838 = pbVar5 + 1;" (assignment_expression "DAT_00077838 = pbVar5 + 1" identifier = (binary_expression "pbVar5 + 1" identifier + number_literal)) ;) (expression_statement "bVar2 = pbVar5[1];" (assignment_expression "bVar2 = pbVar5[1]" identifier = (subscript_expression "pbVar5[1]" identifier [ number_literal ])) ;) }) while (parenthesized_expression "((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0)" ( (binary_expression "(PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0" (parenthesized_expression "(PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4)" ( (binary_expression "PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4" (subscript_expression "PTR__sch_istable_0006df70[(uint)bVar2 * 2]" identifier [ (binary_expression "(uint)bVar2 * 2" (cast_expression "(uint)bVar2" ( (type_descriptor "uint" type_identifier) ) identifier) * number_literal) ]) & number_literal) )) != number_literal) )) ;) (expression_statement "pbVar5[1] = 0;" (assignment_expression "pbVar5[1] = 0" (subscript_expression "pbVar5[1]" identifier [ number_literal ]) = number_literal) ;) (if_statement "if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }" if (parenthesized_expression "(DAT_00077828 != 0)" ( (binary_expression "DAT_00077828 != 0" identifier != number_literal) )) (compound_statement "{\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }" { (expression_statement "__s = (char *)FUN_000384a0(DAT_00077828);" (assignment_expression "__s = (char *)FUN_000384a0(DAT_00077828)" identifier = (cast_expression "(char *)FUN_000384a0(DAT_00077828)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "FUN_000384a0(DAT_00077828)" identifier (argument_list "(DAT_00077828)" ( identifier ))))) ;) (expression_statement "sVar4 = strlen(__s);" (assignment_expression "sVar4 = strlen(__s)" identifier = (call_expression "strlen(__s)" identifier (argument_list "(__s)" ( identifier )))) ;) (expression_statement "pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));" (assignment_expression "pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34))" identifier = (cast_expression "(byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34))" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34))" identifier (argument_list "(DAT_00077838 + ((sVar4 + 1) - (int)local_34))" ( (binary_expression "DAT_00077838 + ((sVar4 + 1) - (int)local_34)" identifier + (parenthesized_expression "((sVar4 + 1) - (int)local_34)" ( (binary_expression "(sVar4 + 1) - (int)local_34" (parenthesized_expression "(sVar4 + 1)" ( (binary_expression "sVar4 + 1" identifier + number_literal) )) - (cast_expression "(int)local_34" ( (type_descriptor "int" primitive_type) ) identifier)) ))) ))))) ;) (expression_statement "uVar7 = FUN_000384a0(DAT_00077828);" (assignment_expression "uVar7 = FUN_000384a0(DAT_00077828)" identifier = (call_expression "FUN_000384a0(DAT_00077828)" identifier (argument_list "(DAT_00077828)" ( identifier )))) ;) (expression_statement "sprintf((char *)pbVar5,"%s%s",local_34,uVar7);" (call_expression "sprintf((char *)pbVar5,"%s%s",local_34,uVar7)" identifier (argument_list "((char *)pbVar5,"%s%s",local_34,uVar7)" ( (cast_expression "(char *)pbVar5" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""%s%s"" " string_content ") , identifier , identifier ))) ;) (expression_statement "local_34 = pbVar5;" (assignment_expression "local_34 = pbVar5" identifier = identifier) ;) (expression_statement "uVar7 = FUN_0003a400(pbVar5);" (assignment_expression "uVar7 = FUN_0003a400(pbVar5)" identifier = (call_expression "FUN_0003a400(pbVar5)" identifier (argument_list "(pbVar5)" ( identifier )))) ;) (expression_statement "FUN_00024290((int)(char)bVar2);" (call_expression "FUN_00024290((int)(char)bVar2)" identifier (argument_list "((int)(char)bVar2)" ( (cast_expression "(int)(char)bVar2" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar2" ( (type_descriptor "char" primitive_type) ) identifier)) ))) ;) (expression_statement "free(pbVar5);" (call_expression "free(pbVar5)" identifier (argument_list "(pbVar5)" ( identifier ))) ;) (goto_statement "goto LAB_0003294e;" goto statement_identifier ;) })) (expression_statement "uVar7 = FUN_0003a400(local_34);" (assignment_expression "uVar7 = FUN_0003a400(local_34)" identifier = (call_expression "FUN_0003a400(local_34)" identifier (argument_list "(local_34)" ( identifier )))) ;) (expression_statement "FUN_00024290((int)(char)bVar2);" (call_expression "FUN_00024290((int)(char)bVar2)" identifier (argument_list "((int)(char)bVar2)" ( (cast_expression "(int)(char)bVar2" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar2" ( (type_descriptor "char" primitive_type) ) identifier)) ))) ;) (if_statement "if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;" if (parenthesized_expression "(*DAT_00077838 == 0x2c)" ( (binary_expression "*DAT_00077838 == 0x2c" (pointer_expression "*DAT_00077838" * identifier) == number_literal) )) (goto_statement "goto LAB_00032a5c;" goto statement_identifier ;)) (labeled_statement "LAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);" statement_identifier : (expression_statement "iVar6 = FUN_000380e0(uVar7);" (assignment_expression "iVar6 = FUN_000380e0(uVar7)" identifier = (call_expression "FUN_000380e0(uVar7)" identifier (argument_list "(uVar7)" ( identifier )))) ;)) (if_statement "if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }" if (parenthesized_expression "((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0))" ( (binary_expression "(iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)" (parenthesized_expression "(iVar6 != 0)" ( (binary_expression "iVar6 != 0" identifier != number_literal) )) && (parenthesized_expression "(iVar6 = FUN_00038090(uVar7), iVar6 == 0)" ( (comma_expression "iVar6 = FUN_00038090(uVar7), iVar6 == 0" (assignment_expression "iVar6 = FUN_00038090(uVar7)" identifier = (call_expression "FUN_00038090(uVar7)" identifier (argument_list "(uVar7)" ( identifier )))) , (binary_expression "iVar6 == 0" identifier == number_literal)) ))) )) (compound_statement "{\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }" { (labeled_statement "LAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);" statement_identifier : (expression_statement "uVar7 = FUN_000384a0(uVar7);" (assignment_expression "uVar7 = FUN_000384a0(uVar7)" identifier = (call_expression "FUN_000384a0(uVar7)" identifier (argument_list "(uVar7)" ( identifier )))) ;)) (expression_statement "uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);" (assignment_expression "uVar8 = dcgettext(0,"symbol `%s\' is already defined",5)" identifier = (call_expression "dcgettext(0,"symbol `%s\' is already defined",5)" identifier (argument_list "(0,"symbol `%s\' is already defined",5)" ( number_literal , (string_literal ""symbol `%s\' is already defined"" " string_content escape_sequence string_content ") , number_literal )))) ;) (expression_statement "FUN_0002bcf0(uVar8,uVar7);" (call_expression "FUN_0002bcf0(uVar8,uVar7)" identifier (argument_list "(uVar8,uVar7)" ( identifier , identifier ))) ;) (expression_statement "FUN_0002dff0();" (call_expression "FUN_0002dff0()" identifier (argument_list "()" ( ))) ;) (goto_statement "goto LAB_00032a10;" goto statement_identifier ;) })) (expression_statement "FUN_00039df0(uVar7);" (call_expression "FUN_00039df0(uVar7)" identifier (argument_list "(uVar7)" ( identifier ))) ;) (expression_statement "FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);" (call_expression "FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8)" identifier (argument_list "(uVar7,PTR__bfd_std_section_0006dfa8)" ( identifier , identifier ))) ;) (expression_statement "DAT_00077820 = uVar7;" (assignment_expression "DAT_00077820 = uVar7" identifier = identifier) ;) }))) (if_statement "if (DAT_00077828 != 0) {\n    local_20 = 3;\n    local_28 = 0;\n    local_24 = 0;\n    local_30[0] = uVar7;\n    FUN_0003b070(DAT_00077828,local_30);\n    FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);\n    FUN_00038520(DAT_00077828,DAT_00077620);\n  }" if (parenthesized_expression "(DAT_00077828 != 0)" ( (binary_expression "DAT_00077828 != 0" identifier != number_literal) )) (compound_statement "{\n    local_20 = 3;\n    local_28 = 0;\n    local_24 = 0;\n    local_30[0] = uVar7;\n    FUN_0003b070(DAT_00077828,local_30);\n    FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);\n    FUN_00038520(DAT_00077828,DAT_00077620);\n  }" { (expression_statement "local_20 = 3;" (assignment_expression "local_20 = 3" identifier = number_literal) ;) (expression_statement "local_28 = 0;" (assignment_expression "local_28 = 0" identifier = number_literal) ;) (expression_statement "local_24 = 0;" (assignment_expression "local_24 = 0" identifier = number_literal) ;) (expression_statement "local_30[0] = uVar7;" (assignment_expression "local_30[0] = uVar7" (subscript_expression "local_30[0]" identifier [ number_literal ]) = identifier) ;) (expression_statement "FUN_0003b070(DAT_00077828,local_30);" (call_expression "FUN_0003b070(DAT_00077828,local_30)" identifier (argument_list "(DAT_00077828,local_30)" ( identifier , identifier ))) ;) (expression_statement "FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);" (call_expression "FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c)" identifier (argument_list "(DAT_00077828,PTR_DAT_0006df6c)" ( identifier , identifier ))) ;) (expression_statement "FUN_00038520(DAT_00077828,DAT_00077620);" (call_expression "FUN_00038520(DAT_00077828,DAT_00077620)" identifier (argument_list "(DAT_00077828,DAT_00077620)" ( identifier , identifier ))) ;) })) (expression_statement "pbVar5 = DAT_00077838;" (assignment_expression "pbVar5 = DAT_00077838" identifier = identifier) ;) (if_statement "if ((*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)) {\n    pbVar5 = DAT_00077838 + 4;\n  }" if (parenthesized_expression "((*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c))" ( (binary_expression "(*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)" (parenthesized_expression "(*DAT_00077838 == 0x2c)" ( (binary_expression "*DAT_00077838 == 0x2c" (pointer_expression "*DAT_00077838" * identifier) == number_literal) )) && (parenthesized_expression "(pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)" ( (comma_expression "pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c" (assignment_expression "pbVar5 = DAT_00077838 + 2" identifier = (binary_expression "DAT_00077838 + 2" identifier + number_literal)) , (binary_expression "DAT_00077838[2] == 0x2c" (subscript_expression "DAT_00077838[2]" identifier [ number_literal ]) == number_literal)) ))) )) (compound_statement "{\n    pbVar5 = DAT_00077838 + 4;\n  }" { (expression_statement "pbVar5 = DAT_00077838 + 4;" (assignment_expression "pbVar5 = DAT_00077838 + 4" identifier = (binary_expression "DAT_00077838 + 4" identifier + number_literal)) ;) })) (expression_statement "DAT_00077838 = pbVar5;" (assignment_expression "DAT_00077838 = pbVar5" identifier = identifier) ;) (expression_statement "FUN_0002e240();" (call_expression "FUN_0002e240()" identifier (argument_list "()" ( ))) ;) (labeled_statement "LAB_00032a10:\n  FUN_0002d9f0(pbVar9,(int)(char)bVar1);" statement_identifier : (expression_statement "FUN_0002d9f0(pbVar9,(int)(char)bVar1);" (call_expression "FUN_0002d9f0(pbVar9,(int)(char)bVar1)" identifier (argument_list "(pbVar9,(int)(char)bVar1)" ( identifier , (cast_expression "(int)(char)bVar1" ( (type_descriptor "int" primitive_type) ) (cast_expression "(char)bVar1" ( (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 IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * 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 IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (expression_statement (assignment_expression IDENT = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( LIT , LIT ))) ;) (return_statement return ;) })) (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) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ (binary_expression (binary_expression (parenthesized_expression ( IDENT )) * IDENT) * LIT) ]) & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( (pointer_expression & IDENT) )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) IDENT) ))) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) != LIT) )) (goto_statement goto statement_identifier ;))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) , (binary_expression IDENT == LIT)) ))) )) (goto_statement goto statement_identifier ;)) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) = IDENT) ;) })) }) (else_clause else (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (subscript_expression IDENT [ LIT ])) ;) }) while (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) ]) & LIT) )) != LIT) )) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = LIT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( IDENT ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression IDENT + (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT + LIT) )) - (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ))))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") , IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) (cast_expression ( (type_descriptor TYPE) ) IDENT)) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) , (binary_expression IDENT == LIT)) ))) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( LIT , (string_literal " string_content escape_sequence string_content ") , LIT )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( ))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression (subscript_expression IDENT [ LIT ]) = IDENT) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == LIT) )) && (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (binary_expression IDENT + LIT)) , (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 (call_expression IDENT (argument_list ( ))) ;) (labeled_statement statement_identifier : (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_00032820(void)\n\n{\n  byte bVar1;\n  byte bVar2;\n  char cVar3;\n  char *__s;\n  size_t sVar4;\n  byte *pbVar5;\n  int iVar6;\n  undefined4 uVar7;\n  undefined4 uVar8;\n  byte *pbVar9;\n  longlong lVar10;\n  byte *local_34;\n  undefined4 local_30 [2];\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined1 local_20;\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x32829;\n  if (DAT_00077768 == 0) {\n    FUN_00032430(0,0);\n    return;\n  }\n  bVar1 = *DAT_00077838;\n  cVar3 = (&DAT_0006e2e0)[bVar1];\n  pbVar9 = DAT_00077838;\n  while (cVar3 == '\0') {\n    pbVar9 = pbVar9 + 1;\n    bVar1 = *pbVar9;\n    cVar3 = (&DAT_0006e2e0)[bVar1];\n  }\n  *pbVar9 = 0;\n  if (*DAT_00077838 == 0x20) {\n    DAT_00077838 = DAT_00077838 + 1;\n  }\n  local_34 = DAT_00077838;\n  if ((PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0) {\n    cVar3 = FUN_000221e0(&local_34);\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)cVar3);\nLAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;\nLAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;\n    lVar10 = FUN_0002c430();\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n    if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }\n  }\n  else {\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }\n  if (DAT_00077828 != 0) {\n    local_20 = 3;\n    local_28 = 0;\n    local_24 = 0;\n    local_30[0] = uVar7;\n    FUN_0003b070(DAT_00077828,local_30);\n    FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);\n    FUN_00038520(DAT_00077828,DAT_00077620);\n  }\n  pbVar5 = DAT_00077838;\n  if ((*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)) {\n    pbVar5 = DAT_00077838 + 4;\n  }\n  DAT_00077838 = pbVar5;\n  FUN_0002e240();\nLAB_00032a10:\n  FUN_0002d9f0(pbVar9,(int)(char)bVar1);\n  return;\n}" (primitive_type "void") (function_declarator "FUN_00032820(void)" (identifier "FUN_00032820") (parameter_list "(void)" (( "(") (parameter_declaration "void" (primitive_type "void")) () ")"))) (compound_statement "{\n  byte bVar1;\n  byte bVar2;\n  char cVar3;\n  char *__s;\n  size_t sVar4;\n  byte *pbVar5;\n  int iVar6;\n  undefined4 uVar7;\n  undefined4 uVar8;\n  byte *pbVar9;\n  longlong lVar10;\n  byte *local_34;\n  undefined4 local_30 [2];\n  undefined4 local_28;\n  undefined4 local_24;\n  undefined1 local_20;\n  undefined4 uStack_14;\n  \n  uStack_14 = 0x32829;\n  if (DAT_00077768 == 0) {\n    FUN_00032430(0,0);\n    return;\n  }\n  bVar1 = *DAT_00077838;\n  cVar3 = (&DAT_0006e2e0)[bVar1];\n  pbVar9 = DAT_00077838;\n  while (cVar3 == '\0') {\n    pbVar9 = pbVar9 + 1;\n    bVar1 = *pbVar9;\n    cVar3 = (&DAT_0006e2e0)[bVar1];\n  }\n  *pbVar9 = 0;\n  if (*DAT_00077838 == 0x20) {\n    DAT_00077838 = DAT_00077838 + 1;\n  }\n  local_34 = DAT_00077838;\n  if ((PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0) {\n    cVar3 = FUN_000221e0(&local_34);\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)cVar3);\nLAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;\nLAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;\n    lVar10 = FUN_0002c430();\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n    if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }\n  }\n  else {\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }\n  if (DAT_00077828 != 0) {\n    local_20 = 3;\n    local_28 = 0;\n    local_24 = 0;\n    local_30[0] = uVar7;\n    FUN_0003b070(DAT_00077828,local_30);\n    FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);\n    FUN_00038520(DAT_00077828,DAT_00077620);\n  }\n  pbVar5 = DAT_00077838;\n  if ((*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)) {\n    pbVar5 = DAT_00077838 + 4;\n  }\n  DAT_00077838 = pbVar5;\n  FUN_0002e240();\nLAB_00032a10:\n  FUN_0002d9f0(pbVar9,(int)(char)bVar1);\n  return;\n}" ({ "{") (declaration "byte bVar1;" (type_identifier "byte") (identifier "bVar1") (; ";")) (declaration "byte bVar2;" (type_identifier "byte") (identifier "bVar2") (; ";")) (declaration "char cVar3;" (primitive_type "char") (identifier "cVar3") (; ";")) (declaration "char *__s;" (primitive_type "char") (pointer_declarator "*__s" (* "*") (identifier "__s")) (; ";")) (declaration "size_t sVar4;" (primitive_type "size_t") (identifier "sVar4") (; ";")) (declaration "byte *pbVar5;" (type_identifier "byte") (pointer_declarator "*pbVar5" (* "*") (identifier "pbVar5")) (; ";")) (declaration "int iVar6;" (primitive_type "int") (identifier "iVar6") (; ";")) (declaration "undefined4 uVar7;" (type_identifier "undefined4") (identifier "uVar7") (; ";")) (declaration "undefined4 uVar8;" (type_identifier "undefined4") (identifier "uVar8") (; ";")) (declaration "byte *pbVar9;" (type_identifier "byte") (pointer_declarator "*pbVar9" (* "*") (identifier "pbVar9")) (; ";")) (declaration "longlong lVar10;" (type_identifier "longlong") (identifier "lVar10") (; ";")) (declaration "byte *local_34;" (type_identifier "byte") (pointer_declarator "*local_34" (* "*") (identifier "local_34")) (; ";")) (declaration "undefined4 local_30 [2];" (type_identifier "undefined4") (array_declarator "local_30 [2]" (identifier "local_30") ([ "[") (number_literal "2") (] "]")) (; ";")) (declaration "undefined4 local_28;" (type_identifier "undefined4") (identifier "local_28") (; ";")) (declaration "undefined4 local_24;" (type_identifier "undefined4") (identifier "local_24") (; ";")) (declaration "undefined1 local_20;" (type_identifier "undefined1") (identifier "local_20") (; ";")) (declaration "undefined4 uStack_14;" (type_identifier "undefined4") (identifier "uStack_14") (; ";")) (expression_statement "uStack_14 = 0x32829;" (assignment_expression "uStack_14 = 0x32829" (identifier "uStack_14") (= "=") (number_literal "0x32829")) (; ";")) (if_statement "if (DAT_00077768 == 0) {\n    FUN_00032430(0,0);\n    return;\n  }" (if "if") (parenthesized_expression "(DAT_00077768 == 0)" (( "(") (binary_expression "DAT_00077768 == 0" (identifier "DAT_00077768") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    FUN_00032430(0,0);\n    return;\n  }" ({ "{") (expression_statement "FUN_00032430(0,0);" (call_expression "FUN_00032430(0,0)" (identifier "FUN_00032430") (argument_list "(0,0)" (( "(") (number_literal "0") (, ",") (number_literal "0") () ")"))) (; ";")) (return_statement "return;" (return "return") (; ";")) (} "}"))) (expression_statement "bVar1 = *DAT_00077838;" (assignment_expression "bVar1 = *DAT_00077838" (identifier "bVar1") (= "=") (pointer_expression "*DAT_00077838" (* "*") (identifier "DAT_00077838"))) (; ";")) (expression_statement "cVar3 = (&DAT_0006e2e0)[bVar1];" (assignment_expression "cVar3 = (&DAT_0006e2e0)[bVar1]" (identifier "cVar3") (= "=") (subscript_expression "(&DAT_0006e2e0)[bVar1]" (parenthesized_expression "(&DAT_0006e2e0)" (( "(") (pointer_expression "&DAT_0006e2e0" (& "&") (identifier "DAT_0006e2e0")) () ")")) ([ "[") (identifier "bVar1") (] "]"))) (; ";")) (expression_statement "pbVar9 = DAT_00077838;" (assignment_expression "pbVar9 = DAT_00077838" (identifier "pbVar9") (= "=") (identifier "DAT_00077838")) (; ";")) (while_statement "while (cVar3 == '\0') {\n    pbVar9 = pbVar9 + 1;\n    bVar1 = *pbVar9;\n    cVar3 = (&DAT_0006e2e0)[bVar1];\n  }" (while "while") (parenthesized_expression "(cVar3 == '\0')" (( "(") (binary_expression "cVar3 == '\0'" (identifier "cVar3") (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n    pbVar9 = pbVar9 + 1;\n    bVar1 = *pbVar9;\n    cVar3 = (&DAT_0006e2e0)[bVar1];\n  }" ({ "{") (expression_statement "pbVar9 = pbVar9 + 1;" (assignment_expression "pbVar9 = pbVar9 + 1" (identifier "pbVar9") (= "=") (binary_expression "pbVar9 + 1" (identifier "pbVar9") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar1 = *pbVar9;" (assignment_expression "bVar1 = *pbVar9" (identifier "bVar1") (= "=") (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9"))) (; ";")) (expression_statement "cVar3 = (&DAT_0006e2e0)[bVar1];" (assignment_expression "cVar3 = (&DAT_0006e2e0)[bVar1]" (identifier "cVar3") (= "=") (subscript_expression "(&DAT_0006e2e0)[bVar1]" (parenthesized_expression "(&DAT_0006e2e0)" (( "(") (pointer_expression "&DAT_0006e2e0" (& "&") (identifier "DAT_0006e2e0")) () ")")) ([ "[") (identifier "bVar1") (] "]"))) (; ";")) (} "}"))) (expression_statement "*pbVar9 = 0;" (assignment_expression "*pbVar9 = 0" (pointer_expression "*pbVar9" (* "*") (identifier "pbVar9")) (= "=") (number_literal "0")) (; ";")) (if_statement "if (*DAT_00077838 == 0x20) {\n    DAT_00077838 = DAT_00077838 + 1;\n  }" (if "if") (parenthesized_expression "(*DAT_00077838 == 0x20)" (( "(") (binary_expression "*DAT_00077838 == 0x20" (pointer_expression "*DAT_00077838" (* "*") (identifier "DAT_00077838")) (== "==") (number_literal "0x20")) () ")")) (compound_statement "{\n    DAT_00077838 = DAT_00077838 + 1;\n  }" ({ "{") (expression_statement "DAT_00077838 = DAT_00077838 + 1;" (assignment_expression "DAT_00077838 = DAT_00077838 + 1" (identifier "DAT_00077838") (= "=") (binary_expression "DAT_00077838 + 1" (identifier "DAT_00077838") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (expression_statement "local_34 = DAT_00077838;" (assignment_expression "local_34 = DAT_00077838" (identifier "local_34") (= "=") (identifier "DAT_00077838")) (; ";")) (if_statement "if ((PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0) {\n    cVar3 = FUN_000221e0(&local_34);\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)cVar3);\nLAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;\nLAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;\n    lVar10 = FUN_0002c430();\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n    if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }\n  }\n  else {\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }" (if "if") (parenthesized_expression "((PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0)" (( "(") (binary_expression "(PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0" (parenthesized_expression "(PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4)" (( "(") (binary_expression "PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4" (subscript_expression "PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2]" (identifier "PTR__sch_istable_0006df70") ([ "[") (binary_expression "(uint)*DAT_00077838 * 2" (binary_expression "(uint)*DAT_00077838" (parenthesized_expression "(uint)" (( "(") (identifier "uint") () ")")) (* "*") (identifier "DAT_00077838")) (* "*") (number_literal "2")) (] "]")) (& "&") (number_literal "4")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    cVar3 = FUN_000221e0(&local_34);\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)cVar3);\nLAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;\nLAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;\n    lVar10 = FUN_0002c430();\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n    if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }\n  }" ({ "{") (expression_statement "cVar3 = FUN_000221e0(&local_34);" (assignment_expression "cVar3 = FUN_000221e0(&local_34)" (identifier "cVar3") (= "=") (call_expression "FUN_000221e0(&local_34)" (identifier "FUN_000221e0") (argument_list "(&local_34)" (( "(") (pointer_expression "&local_34" (& "&") (identifier "local_34")) () ")")))) (; ";")) (expression_statement "uVar7 = FUN_0003a400(local_34);" (assignment_expression "uVar7 = FUN_0003a400(local_34)" (identifier "uVar7") (= "=") (call_expression "FUN_0003a400(local_34)" (identifier "FUN_0003a400") (argument_list "(local_34)" (( "(") (identifier "local_34") () ")")))) (; ";")) (expression_statement "FUN_00024290((int)cVar3);" (call_expression "FUN_00024290((int)cVar3)" (identifier "FUN_00024290") (argument_list "((int)cVar3)" (( "(") (cast_expression "(int)cVar3" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "cVar3")) () ")"))) (; ";")) (labeled_statement "LAB_0003294e:\n    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;" (statement_identifier "LAB_0003294e") (: ":") (if_statement "if (*DAT_00077838 != 0x2c) goto LAB_0003295d;" (if "if") (parenthesized_expression "(*DAT_00077838 != 0x2c)" (( "(") (binary_expression "*DAT_00077838 != 0x2c" (pointer_expression "*DAT_00077838" (* "*") (identifier "DAT_00077838")) (!= "!=") (number_literal "0x2c")) () ")")) (goto_statement "goto LAB_0003295d;" (goto "goto") (statement_identifier "LAB_0003295d") (; ";")))) (labeled_statement "LAB_00032a5c:\n    DAT_00077838 = DAT_00077838 + 1;" (statement_identifier "LAB_00032a5c") (: ":") (expression_statement "DAT_00077838 = DAT_00077838 + 1;" (assignment_expression "DAT_00077838 = DAT_00077838 + 1" (identifier "DAT_00077838") (= "=") (binary_expression "DAT_00077838 + 1" (identifier "DAT_00077838") (+ "+") (number_literal "1"))) (; ";"))) (expression_statement "lVar10 = FUN_0002c430();" (assignment_expression "lVar10 = FUN_0002c430()" (identifier "lVar10") (= "=") (call_expression "FUN_0002c430()" (identifier "FUN_0002c430") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "iVar6 = FUN_000380e0(uVar7);" (assignment_expression "iVar6 = FUN_000380e0(uVar7)" (identifier "iVar6") (= "=") (call_expression "FUN_000380e0(uVar7)" (identifier "FUN_000380e0") (argument_list "(uVar7)" (( "(") (identifier "uVar7") () ")")))) (; ";")) (if_statement "if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;" (if "if") (parenthesized_expression "((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0))" (( "(") (binary_expression "(iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)" (parenthesized_expression "(iVar6 != 0)" (( "(") (binary_expression "iVar6 != 0" (identifier "iVar6") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar6 = FUN_00038090(uVar7), iVar6 == 0)" (( "(") (comma_expression "iVar6 = FUN_00038090(uVar7), iVar6 == 0" (assignment_expression "iVar6 = FUN_00038090(uVar7)" (identifier "iVar6") (= "=") (call_expression "FUN_00038090(uVar7)" (identifier "FUN_00038090") (argument_list "(uVar7)" (( "(") (identifier "uVar7") () ")")))) (, ",") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0"))) () ")"))) () ")")) (goto_statement "goto LAB_00032b60;" (goto "goto") (statement_identifier "LAB_00032b60") (; ";"))) (expression_statement "FUN_00039df0(uVar7);" (call_expression "FUN_00039df0(uVar7)" (identifier "FUN_00039df0") (argument_list "(uVar7)" (( "(") (identifier "uVar7") () ")"))) (; ";")) (expression_statement "FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);" (call_expression "FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8)" (identifier "FUN_00038520") (argument_list "(uVar7,PTR__bfd_std_section_0006dfa8)" (( "(") (identifier "uVar7") (, ",") (identifier "PTR__bfd_std_section_0006dfa8") () ")"))) (; ";")) (expression_statement "DAT_00077820 = uVar7;" (assignment_expression "DAT_00077820 = uVar7" (identifier "DAT_00077820") (= "=") (identifier "uVar7")) (; ";")) (if_statement "if (lVar10 != 0) {\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }" (if "if") (parenthesized_expression "(lVar10 != 0)" (( "(") (binary_expression "lVar10 != 0" (identifier "lVar10") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      iVar6 = FUN_0003b810(uVar7);\n      *(longlong *)(iVar6 + 0x20) = lVar10;\n    }" ({ "{") (expression_statement "iVar6 = FUN_0003b810(uVar7);" (assignment_expression "iVar6 = FUN_0003b810(uVar7)" (identifier "iVar6") (= "=") (call_expression "FUN_0003b810(uVar7)" (identifier "FUN_0003b810") (argument_list "(uVar7)" (( "(") (identifier "uVar7") () ")")))) (; ";")) (expression_statement "*(longlong *)(iVar6 + 0x20) = lVar10;" (assignment_expression "*(longlong *)(iVar6 + 0x20) = lVar10" (pointer_expression "*(longlong *)(iVar6 + 0x20)" (* "*") (cast_expression "(longlong *)(iVar6 + 0x20)" (( "(") (type_descriptor "longlong *" (type_identifier "longlong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar6 + 0x20)" (( "(") (binary_expression "iVar6 + 0x20" (identifier "iVar6") (+ "+") (number_literal "0x20")) () ")")))) (= "=") (identifier "lVar10")) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }" (else "else") (compound_statement "{\n    do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);\n    pbVar5[1] = 0;\n    if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }\n    uVar7 = FUN_0003a400(local_34);\n    FUN_00024290((int)(char)bVar2);\n    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;\nLAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);\n    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }\n    FUN_00039df0(uVar7);\n    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);\n    DAT_00077820 = uVar7;\n  }" ({ "{") (do_statement "do {\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);" (do "do") (compound_statement "{\n      pbVar5 = DAT_00077838;\n      DAT_00077838 = pbVar5 + 1;\n      bVar2 = pbVar5[1];\n    }" ({ "{") (expression_statement "pbVar5 = DAT_00077838;" (assignment_expression "pbVar5 = DAT_00077838" (identifier "pbVar5") (= "=") (identifier "DAT_00077838")) (; ";")) (expression_statement "DAT_00077838 = pbVar5 + 1;" (assignment_expression "DAT_00077838 = pbVar5 + 1" (identifier "DAT_00077838") (= "=") (binary_expression "pbVar5 + 1" (identifier "pbVar5") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "bVar2 = pbVar5[1];" (assignment_expression "bVar2 = pbVar5[1]" (identifier "bVar2") (= "=") (subscript_expression "pbVar5[1]" (identifier "pbVar5") ([ "[") (number_literal "1") (] "]"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0)" (( "(") (binary_expression "(PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0" (parenthesized_expression "(PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4)" (( "(") (binary_expression "PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4" (subscript_expression "PTR__sch_istable_0006df70[(uint)bVar2 * 2]" (identifier "PTR__sch_istable_0006df70") ([ "[") (binary_expression "(uint)bVar2 * 2" (cast_expression "(uint)bVar2" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (identifier "bVar2")) (* "*") (number_literal "2")) (] "]")) (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (; ";")) (expression_statement "pbVar5[1] = 0;" (assignment_expression "pbVar5[1] = 0" (subscript_expression "pbVar5[1]" (identifier "pbVar5") ([ "[") (number_literal "1") (] "]")) (= "=") (number_literal "0")) (; ";")) (if_statement "if (DAT_00077828 != 0) {\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }" (if "if") (parenthesized_expression "(DAT_00077828 != 0)" (( "(") (binary_expression "DAT_00077828 != 0" (identifier "DAT_00077828") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      __s = (char *)FUN_000384a0(DAT_00077828);\n      sVar4 = strlen(__s);\n      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));\n      uVar7 = FUN_000384a0(DAT_00077828);\n      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);\n      local_34 = pbVar5;\n      uVar7 = FUN_0003a400(pbVar5);\n      FUN_00024290((int)(char)bVar2);\n      free(pbVar5);\n      goto LAB_0003294e;\n    }" ({ "{") (expression_statement "__s = (char *)FUN_000384a0(DAT_00077828);" (assignment_expression "__s = (char *)FUN_000384a0(DAT_00077828)" (identifier "__s") (= "=") (cast_expression "(char *)FUN_000384a0(DAT_00077828)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "FUN_000384a0(DAT_00077828)" (identifier "FUN_000384a0") (argument_list "(DAT_00077828)" (( "(") (identifier "DAT_00077828") () ")"))))) (; ";")) (expression_statement "sVar4 = strlen(__s);" (assignment_expression "sVar4 = strlen(__s)" (identifier "sVar4") (= "=") (call_expression "strlen(__s)" (identifier "strlen") (argument_list "(__s)" (( "(") (identifier "__s") () ")")))) (; ";")) (expression_statement "pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));" (assignment_expression "pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34))" (identifier "pbVar5") (= "=") (cast_expression "(byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34))" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34))" (identifier "xmalloc") (argument_list "(DAT_00077838 + ((sVar4 + 1) - (int)local_34))" (( "(") (binary_expression "DAT_00077838 + ((sVar4 + 1) - (int)local_34)" (identifier "DAT_00077838") (+ "+") (parenthesized_expression "((sVar4 + 1) - (int)local_34)" (( "(") (binary_expression "(sVar4 + 1) - (int)local_34" (parenthesized_expression "(sVar4 + 1)" (( "(") (binary_expression "sVar4 + 1" (identifier "sVar4") (+ "+") (number_literal "1")) () ")")) (- "-") (cast_expression "(int)local_34" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_34"))) () ")"))) () ")"))))) (; ";")) (expression_statement "uVar7 = FUN_000384a0(DAT_00077828);" (assignment_expression "uVar7 = FUN_000384a0(DAT_00077828)" (identifier "uVar7") (= "=") (call_expression "FUN_000384a0(DAT_00077828)" (identifier "FUN_000384a0") (argument_list "(DAT_00077828)" (( "(") (identifier "DAT_00077828") () ")")))) (; ";")) (expression_statement "sprintf((char *)pbVar5,"%s%s",local_34,uVar7);" (call_expression "sprintf((char *)pbVar5,"%s%s",local_34,uVar7)" (identifier "sprintf") (argument_list "((char *)pbVar5,"%s%s",local_34,uVar7)" (( "(") (cast_expression "(char *)pbVar5" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "pbVar5")) (, ",") (string_literal ""%s%s"" (" """) (string_content "%s%s") (" """)) (, ",") (identifier "local_34") (, ",") (identifier "uVar7") () ")"))) (; ";")) (expression_statement "local_34 = pbVar5;" (assignment_expression "local_34 = pbVar5" (identifier "local_34") (= "=") (identifier "pbVar5")) (; ";")) (expression_statement "uVar7 = FUN_0003a400(pbVar5);" (assignment_expression "uVar7 = FUN_0003a400(pbVar5)" (identifier "uVar7") (= "=") (call_expression "FUN_0003a400(pbVar5)" (identifier "FUN_0003a400") (argument_list "(pbVar5)" (( "(") (identifier "pbVar5") () ")")))) (; ";")) (expression_statement "FUN_00024290((int)(char)bVar2);" (call_expression "FUN_00024290((int)(char)bVar2)" (identifier "FUN_00024290") (argument_list "((int)(char)bVar2)" (( "(") (cast_expression "(int)(char)bVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (cast_expression "(char)bVar2" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "bVar2"))) () ")"))) (; ";")) (expression_statement "free(pbVar5);" (call_expression "free(pbVar5)" (identifier "free") (argument_list "(pbVar5)" (( "(") (identifier "pbVar5") () ")"))) (; ";")) (goto_statement "goto LAB_0003294e;" (goto "goto") (statement_identifier "LAB_0003294e") (; ";")) (} "}"))) (expression_statement "uVar7 = FUN_0003a400(local_34);" (assignment_expression "uVar7 = FUN_0003a400(local_34)" (identifier "uVar7") (= "=") (call_expression "FUN_0003a400(local_34)" (identifier "FUN_0003a400") (argument_list "(local_34)" (( "(") (identifier "local_34") () ")")))) (; ";")) (expression_statement "FUN_00024290((int)(char)bVar2);" (call_expression "FUN_00024290((int)(char)bVar2)" (identifier "FUN_00024290") (argument_list "((int)(char)bVar2)" (( "(") (cast_expression "(int)(char)bVar2" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (cast_expression "(char)bVar2" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "bVar2"))) () ")"))) (; ";")) (if_statement "if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;" (if "if") (parenthesized_expression "(*DAT_00077838 == 0x2c)" (( "(") (binary_expression "*DAT_00077838 == 0x2c" (pointer_expression "*DAT_00077838" (* "*") (identifier "DAT_00077838")) (== "==") (number_literal "0x2c")) () ")")) (goto_statement "goto LAB_00032a5c;" (goto "goto") (statement_identifier "LAB_00032a5c") (; ";"))) (labeled_statement "LAB_0003295d:\n    iVar6 = FUN_000380e0(uVar7);" (statement_identifier "LAB_0003295d") (: ":") (expression_statement "iVar6 = FUN_000380e0(uVar7);" (assignment_expression "iVar6 = FUN_000380e0(uVar7)" (identifier "iVar6") (= "=") (call_expression "FUN_000380e0(uVar7)" (identifier "FUN_000380e0") (argument_list "(uVar7)" (( "(") (identifier "uVar7") () ")")))) (; ";"))) (if_statement "if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }" (if "if") (parenthesized_expression "((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0))" (( "(") (binary_expression "(iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)" (parenthesized_expression "(iVar6 != 0)" (( "(") (binary_expression "iVar6 != 0" (identifier "iVar6") (!= "!=") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "(iVar6 = FUN_00038090(uVar7), iVar6 == 0)" (( "(") (comma_expression "iVar6 = FUN_00038090(uVar7), iVar6 == 0" (assignment_expression "iVar6 = FUN_00038090(uVar7)" (identifier "iVar6") (= "=") (call_expression "FUN_00038090(uVar7)" (identifier "FUN_00038090") (argument_list "(uVar7)" (( "(") (identifier "uVar7") () ")")))) (, ",") (binary_expression "iVar6 == 0" (identifier "iVar6") (== "==") (number_literal "0"))) () ")"))) () ")")) (compound_statement "{\nLAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);\n      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);\n      FUN_0002bcf0(uVar8,uVar7);\n      FUN_0002dff0();\n      goto LAB_00032a10;\n    }" ({ "{") (labeled_statement "LAB_00032b60:\n      uVar7 = FUN_000384a0(uVar7);" (statement_identifier "LAB_00032b60") (: ":") (expression_statement "uVar7 = FUN_000384a0(uVar7);" (assignment_expression "uVar7 = FUN_000384a0(uVar7)" (identifier "uVar7") (= "=") (call_expression "FUN_000384a0(uVar7)" (identifier "FUN_000384a0") (argument_list "(uVar7)" (( "(") (identifier "uVar7") () ")")))) (; ";"))) (expression_statement "uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);" (assignment_expression "uVar8 = dcgettext(0,"symbol `%s\' is already defined",5)" (identifier "uVar8") (= "=") (call_expression "dcgettext(0,"symbol `%s\' is already defined",5)" (identifier "dcgettext") (argument_list "(0,"symbol `%s\' is already defined",5)" (( "(") (number_literal "0") (, ",") (string_literal ""symbol `%s\' is already defined"" (" """) (string_content "symbol `%s") (escape_sequence "\'") (string_content " is already defined") (" """)) (, ",") (number_literal "5") () ")")))) (; ";")) (expression_statement "FUN_0002bcf0(uVar8,uVar7);" (call_expression "FUN_0002bcf0(uVar8,uVar7)" (identifier "FUN_0002bcf0") (argument_list "(uVar8,uVar7)" (( "(") (identifier "uVar8") (, ",") (identifier "uVar7") () ")"))) (; ";")) (expression_statement "FUN_0002dff0();" (call_expression "FUN_0002dff0()" (identifier "FUN_0002dff0") (argument_list "()" (( "(") () ")"))) (; ";")) (goto_statement "goto LAB_00032a10;" (goto "goto") (statement_identifier "LAB_00032a10") (; ";")) (} "}"))) (expression_statement "FUN_00039df0(uVar7);" (call_expression "FUN_00039df0(uVar7)" (identifier "FUN_00039df0") (argument_list "(uVar7)" (( "(") (identifier "uVar7") () ")"))) (; ";")) (expression_statement "FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);" (call_expression "FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8)" (identifier "FUN_00038520") (argument_list "(uVar7,PTR__bfd_std_section_0006dfa8)" (( "(") (identifier "uVar7") (, ",") (identifier "PTR__bfd_std_section_0006dfa8") () ")"))) (; ";")) (expression_statement "DAT_00077820 = uVar7;" (assignment_expression "DAT_00077820 = uVar7" (identifier "DAT_00077820") (= "=") (identifier "uVar7")) (; ";")) (} "}")))) (if_statement "if (DAT_00077828 != 0) {\n    local_20 = 3;\n    local_28 = 0;\n    local_24 = 0;\n    local_30[0] = uVar7;\n    FUN_0003b070(DAT_00077828,local_30);\n    FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);\n    FUN_00038520(DAT_00077828,DAT_00077620);\n  }" (if "if") (parenthesized_expression "(DAT_00077828 != 0)" (( "(") (binary_expression "DAT_00077828 != 0" (identifier "DAT_00077828") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n    local_20 = 3;\n    local_28 = 0;\n    local_24 = 0;\n    local_30[0] = uVar7;\n    FUN_0003b070(DAT_00077828,local_30);\n    FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);\n    FUN_00038520(DAT_00077828,DAT_00077620);\n  }" ({ "{") (expression_statement "local_20 = 3;" (assignment_expression "local_20 = 3" (identifier "local_20") (= "=") (number_literal "3")) (; ";")) (expression_statement "local_28 = 0;" (assignment_expression "local_28 = 0" (identifier "local_28") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_24 = 0;" (assignment_expression "local_24 = 0" (identifier "local_24") (= "=") (number_literal "0")) (; ";")) (expression_statement "local_30[0] = uVar7;" (assignment_expression "local_30[0] = uVar7" (subscript_expression "local_30[0]" (identifier "local_30") ([ "[") (number_literal "0") (] "]")) (= "=") (identifier "uVar7")) (; ";")) (expression_statement "FUN_0003b070(DAT_00077828,local_30);" (call_expression "FUN_0003b070(DAT_00077828,local_30)" (identifier "FUN_0003b070") (argument_list "(DAT_00077828,local_30)" (( "(") (identifier "DAT_00077828") (, ",") (identifier "local_30") () ")"))) (; ";")) (expression_statement "FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);" (call_expression "FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c)" (identifier "FUN_0003b1a0") (argument_list "(DAT_00077828,PTR_DAT_0006df6c)" (( "(") (identifier "DAT_00077828") (, ",") (identifier "PTR_DAT_0006df6c") () ")"))) (; ";")) (expression_statement "FUN_00038520(DAT_00077828,DAT_00077620);" (call_expression "FUN_00038520(DAT_00077828,DAT_00077620)" (identifier "FUN_00038520") (argument_list "(DAT_00077828,DAT_00077620)" (( "(") (identifier "DAT_00077828") (, ",") (identifier "DAT_00077620") () ")"))) (; ";")) (} "}"))) (expression_statement "pbVar5 = DAT_00077838;" (assignment_expression "pbVar5 = DAT_00077838" (identifier "pbVar5") (= "=") (identifier "DAT_00077838")) (; ";")) (if_statement "if ((*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)) {\n    pbVar5 = DAT_00077838 + 4;\n  }" (if "if") (parenthesized_expression "((*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c))" (( "(") (binary_expression "(*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)" (parenthesized_expression "(*DAT_00077838 == 0x2c)" (( "(") (binary_expression "*DAT_00077838 == 0x2c" (pointer_expression "*DAT_00077838" (* "*") (identifier "DAT_00077838")) (== "==") (number_literal "0x2c")) () ")")) (&& "&&") (parenthesized_expression "(pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)" (( "(") (comma_expression "pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c" (assignment_expression "pbVar5 = DAT_00077838 + 2" (identifier "pbVar5") (= "=") (binary_expression "DAT_00077838 + 2" (identifier "DAT_00077838") (+ "+") (number_literal "2"))) (, ",") (binary_expression "DAT_00077838[2] == 0x2c" (subscript_expression "DAT_00077838[2]" (identifier "DAT_00077838") ([ "[") (number_literal "2") (] "]")) (== "==") (number_literal "0x2c"))) () ")"))) () ")")) (compound_statement "{\n    pbVar5 = DAT_00077838 + 4;\n  }" ({ "{") (expression_statement "pbVar5 = DAT_00077838 + 4;" (assignment_expression "pbVar5 = DAT_00077838 + 4" (identifier "pbVar5") (= "=") (binary_expression "DAT_00077838 + 4" (identifier "DAT_00077838") (+ "+") (number_literal "4"))) (; ";")) (} "}"))) (expression_statement "DAT_00077838 = pbVar5;" (assignment_expression "DAT_00077838 = pbVar5" (identifier "DAT_00077838") (= "=") (identifier "pbVar5")) (; ";")) (expression_statement "FUN_0002e240();" (call_expression "FUN_0002e240()" (identifier "FUN_0002e240") (argument_list "()" (( "(") () ")"))) (; ";")) (labeled_statement "LAB_00032a10:\n  FUN_0002d9f0(pbVar9,(int)(char)bVar1);" (statement_identifier "LAB_00032a10") (: ":") (expression_statement "FUN_0002d9f0(pbVar9,(int)(char)bVar1);" (call_expression "FUN_0002d9f0(pbVar9,(int)(char)bVar1)" (identifier "FUN_0002d9f0") (argument_list "(pbVar9,(int)(char)bVar1)" (( "(") (identifier "pbVar9") (, ",") (cast_expression "(int)(char)bVar1" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (cast_expression "(char)bVar1" (( "(") (type_descriptor "char" (primitive_type "char")) () ")") (identifier "bVar1"))) () ")"))) (; ";"))) (return_statement "return;" (return "return") (; ";")) (} "}")))

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

void function_1(int small)

{
  type_1 bVar1;
  type_1 c;
  char var_3;
  size_t var_22;
  int var_11;
  type_2 *paVar5;
  type_3 *s;
  char *var_17;
  char *pcVar7;
  type_1 *var_4;
  type_4 var_15;
  char *name;
  type_5 exp;
  
  if (var_1 == 0) {
    var_2(0,(type_6 *)0x0);
    return;
  }
  bVar1 = *var_5;
  var_3 = is_end_of_line[bVar1];
  var_4 = (type_1 *)var_5;
  while (var_3 == '\0') {
    var_4 = var_4 + 1;
    bVar1 = *var_4;
    var_3 = is_end_of_line[bVar1];
  }
  *var_4 = 0;
  if (*var_5 == ' ') {
    var_5 = var_5 + 1;
  }
  name = var_5;
  if ((PTR__sch_istable_0006df70[(type_10)(type_1)*var_5 * 2] & 4) == 0) {
    var_3 = var_6(&name);
    s = var_7(name);
    var_8(var_3);
LAB_0003294e:
    if (*var_5 != ',') goto LAB_0003295d;
LAB_00032a5c:
    var_5 = var_5 + 1;
    var_15 = var_9(&exp);
    var_11 = var_10(s);
    if ((var_11 != 0) && (var_11 = var_12(s), var_11 == 0)) goto LAB_00032b60;
    var_13(s);
    var_14(s,(type_7)PTR__bfd_std_section_0006dfa8);
    mri_common_symbol = s;
    if (var_15 != 0) {
      paVar5 = var_16(s);
      paVar5[1].the_bfd = (type_8 *)(int)var_15;
      paVar5[1].name = (char *)(int)((type_9)var_15 >> 0x20);
    }
  }
  else {
    do {
      var_17 = var_5;
      var_5 = var_17 + 1;
      c = var_17[1];
    } while ((PTR__sch_istable_0006df70[(type_10)c * 2] & 4) != 0);
    var_17[1] = '\0';
    if (var_18 != (type_3 *)0x0) {
      var_17 = var_19(var_18);
      var_22 = var_20(var_17);
      var_17 = (char *)var_21(var_5 + ((var_22 + 1) - (int)name));
      pcVar7 = var_19(var_18);
      var_23(var_17,"%s%s",name,pcVar7);
      name = var_17;
      s = var_7(var_17);
      var_8(c);
      var_24(var_17);
      goto LAB_0003294e;
    }
    s = var_7(name);
    var_8(c);
    if (*var_5 == ',') goto LAB_00032a5c;
LAB_0003295d:
    var_11 = var_10(s);
    if ((var_11 != 0) && (var_11 = var_12(s), var_11 == 0)) {
LAB_00032b60:
      var_17 = var_19(s);
      pcVar7 = (char *)var_25(0,"symbol `%s\' is already defined",5);
      var_26(pcVar7,var_17);
      var_27();
      goto LAB_00032a10;
    }
    var_13(s);
    var_14(s,(type_7)PTR__bfd_std_section_0006dfa8);
    mri_common_symbol = s;
  }
  if (var_18 != (type_3 *)0x0) {
    exp._16_1_ = 3;
    exp.X_add_number._0_4_ = 0;
    exp.X_add_number._4_4_ = 0;
    exp.X_add_symbol = s;
    var_28(var_18,&exp);
    var_29(var_18,(type_11 *)PTR_zero_address_frag_0006df6c);
    var_14(var_18,expr_section);
  }
  var_17 = var_5;
  if ((*var_5 == ',') &&
     (var_17 = var_5 + 2, var_5[2] == ',')) {
    var_17 = var_5 + 4;
  }
  var_5 = var_17;
  var_30();
LAB_00032a10:
  var_31((char *)var_4,(int)(char)bVar1);
  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: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (primitive_type) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (primitive_type) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (pointer_declarator declarator: (identifier))) (declaration type: (type_identifier) declarator: (array_declarator declarator: (identifier) size: (number_literal))) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (declaration type: (type_identifier) declarator: (identifier)) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (call_expression function: (identifier) arguments: (argument_list (number_literal) (number_literal)))) (return_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))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (binary_expression left: (binary_expression left: (parenthesized_expression (identifier)) right: (identifier)) right: (number_literal))) right: (number_literal))) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (pointer_expression argument: (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier))))) (labeled_statement label: (statement_identifier) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier)))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier)))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (goto_statement label: (statement_identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (pointer_expression argument: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))))) right: (identifier)))))) alternative: (else_clause (compound_statement (do_statement body: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal)))) (expression_statement (assignment_expression left: (identifier) right: (subscript_expression argument: (identifier) index: (number_literal))))) condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (subscript_expression argument: (identifier) index: (binary_expression left: (cast_expression type: (type_descriptor type: (type_identifier)) value: (identifier)) right: (number_literal))) right: (number_literal))) right: (number_literal)))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) 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: (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (assignment_expression left: (identifier) right: (cast_expression type: (type_descriptor type: (type_identifier) declarator: (abstract_pointer_declarator)) value: (call_expression function: (identifier) arguments: (argument_list (binary_expression left: (identifier) right: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))))))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type) declarator: (abstract_pointer_declarator)) value: (identifier)) (string_literal (string_content)) (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (goto_statement label: (statement_identifier)))) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (cast_expression type: (type_descriptor type: (primitive_type)) value: (cast_expression type: (type_descriptor type: (primitive_type)) value: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) consequence: (goto_statement label: (statement_identifier))) (labeled_statement label: (statement_identifier) (expression_statement (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (identifier)))) right: (binary_expression left: (identifier) right: (number_literal)))))) consequence: (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: (identifier) right: (call_expression function: (identifier) arguments: (argument_list (number_literal) (string_literal (string_content) (escape_sequence) (string_content)) (number_literal))))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list))) (goto_statement label: (statement_identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (assignment_expression left: (identifier) right: (identifier)))))) (if_statement condition: (parenthesized_expression (binary_expression left: (identifier) right: (number_literal))) consequence: (compound_statement (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (identifier) right: (number_literal))) (expression_statement (assignment_expression left: (subscript_expression argument: (identifier) index: (number_literal)) right: (identifier))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))) (expression_statement (call_expression function: (identifier) arguments: (argument_list (identifier) (identifier)))))) (expression_statement (assignment_expression left: (identifier) right: (identifier))) (if_statement condition: (parenthesized_expression (binary_expression left: (parenthesized_expression (binary_expression left: (pointer_expression argument: (identifier)) right: (number_literal))) right: (parenthesized_expression (comma_expression left: (assignment_expression left: (identifier) right: (binary_expression left: (identifier) right: (number_literal))) right: (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 (call_expression function: (identifier) arguments: (argument_list))) (labeled_statement label: (statement_identifier) (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))))

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

void MASKED(void)

{
  byte bVar1;
  byte bVar2;
  char cVar3;
  char *__s;
  size_t sVar4;
  byte *pbVar5;
  int iVar6;
  undefined4 uVar7;
  undefined4 uVar8;
  byte *pbVar9;
  longlong lVar10;
  byte *local_34;
  undefined4 local_30 [2];
  undefined4 local_28;
  undefined4 local_24;
  undefined1 local_20;
  undefined4 uStack_14;
  
  uStack_14 = 0x32829;
  if (DAT_00077768 == 0) {
    FUN_00032430(0,0);
    return;
  }
  bVar1 = *DAT_00077838;
  cVar3 = (&DAT_0006e2e0)[bVar1];
  pbVar9 = DAT_00077838;
  while (cVar3 == '\0') {
    pbVar9 = pbVar9 + 1;
    bVar1 = *pbVar9;
    cVar3 = (&DAT_0006e2e0)[bVar1];
  }
  *pbVar9 = 0;
  if (*DAT_00077838 == 0x20) {
    DAT_00077838 = DAT_00077838 + 1;
  }
  local_34 = DAT_00077838;
  if ((PTR__sch_istable_0006df70[(uint)*DAT_00077838 * 2] & 4) == 0) {
    cVar3 = FUN_000221e0(&local_34);
    uVar7 = FUN_0003a400(local_34);
    FUN_00024290((int)cVar3);
LAB_0003294e:
    if (*DAT_00077838 != 0x2c) goto LAB_0003295d;
LAB_00032a5c:
    DAT_00077838 = DAT_00077838 + 1;
    lVar10 = FUN_0002c430();
    iVar6 = FUN_000380e0(uVar7);
    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) goto LAB_00032b60;
    FUN_00039df0(uVar7);
    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);
    DAT_00077820 = uVar7;
    if (lVar10 != 0) {
      iVar6 = FUN_0003b810(uVar7);
      *(longlong *)(iVar6 + 0x20) = lVar10;
    }
  }
  else {
    do {
      pbVar5 = DAT_00077838;
      DAT_00077838 = pbVar5 + 1;
      bVar2 = pbVar5[1];
    } while ((PTR__sch_istable_0006df70[(uint)bVar2 * 2] & 4) != 0);
    pbVar5[1] = 0;
    if (DAT_00077828 != 0) {
      __s = (char *)FUN_000384a0(DAT_00077828);
      sVar4 = strlen(__s);
      pbVar5 = (byte *)xmalloc(DAT_00077838 + ((sVar4 + 1) - (int)local_34));
      uVar7 = FUN_000384a0(DAT_00077828);
      sprintf((char *)pbVar5,"%s%s",local_34,uVar7);
      local_34 = pbVar5;
      uVar7 = FUN_0003a400(pbVar5);
      FUN_00024290((int)(char)bVar2);
      free(pbVar5);
      goto LAB_0003294e;
    }
    uVar7 = FUN_0003a400(local_34);
    FUN_00024290((int)(char)bVar2);
    if (*DAT_00077838 == 0x2c) goto LAB_00032a5c;
LAB_0003295d:
    iVar6 = FUN_000380e0(uVar7);
    if ((iVar6 != 0) && (iVar6 = FUN_00038090(uVar7), iVar6 == 0)) {
LAB_00032b60:
      uVar7 = FUN_000384a0(uVar7);
      uVar8 = dcgettext(0,"symbol `%s\' is already defined",5);
      FUN_0002bcf0(uVar8,uVar7);
      FUN_0002dff0();
      goto LAB_00032a10;
    }
    FUN_00039df0(uVar7);
    FUN_00038520(uVar7,PTR__bfd_std_section_0006dfa8);
    DAT_00077820 = uVar7;
  }
  if (DAT_00077828 != 0) {
    local_20 = 3;
    local_28 = 0;
    local_24 = 0;
    local_30[0] = uVar7;
    FUN_0003b070(DAT_00077828,local_30);
    FUN_0003b1a0(DAT_00077828,PTR_DAT_0006df6c);
    FUN_00038520(DAT_00077828,DAT_00077620);
  }
  pbVar5 = DAT_00077838;
  if ((*DAT_00077838 == 0x2c) && (pbVar5 = DAT_00077838 + 2, DAT_00077838[2] == 0x2c)) {
    pbVar5 = DAT_00077838 + 4;
  }
  DAT_00077838 = pbVar5;
  FUN_0002e240();
LAB_00032a10:
  FUN_0002d9f0(pbVar9,(int)(char)bVar1);
  return;
}

