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

void print_symbol_value_1(FILE *file,symbolS *sym)

{
  symbol_flags sVar1;
  byte bVar2;
  int iVar3;
  segT paVar4;
  symbolS *psVar5;
  asymbol *paVar6;
  symbolS *psVar7;
  valueT vVar8;
  undefined *puVar9;
  
  paVar4 = (segT)sym->bsym;
  if (((uint)sym->sy_flags & 1) == 0) {
LAB_00041c16:
    psVar7 = (symbolS *)paVar4->id;
    if (psVar7 == (symbolS *)0x0) goto LAB_00041c03;
LAB_00041c1d:
    if (*(char *)&psVar7->sy_flags == '\0') {
      psVar7 = (symbolS *)"(unnamed)";
    }
  }
  else {
    if (reg_section == paVar4) {
      paVar4 = (segT)((sym->sy_value).X_op_symbol)->bsym;
      goto LAB_00041c16;
    }
    psVar7 = (sym->sy_value).X_add_symbol;
    if (psVar7 != (symbolS *)0x0) goto LAB_00041c1d;
LAB_00041c03:
    psVar7 = (symbolS *)"(unnamed)";
  }
  fwrite(&DAT_0005bbc8,1,4,(FILE *)file);
  fprintf((FILE *)file,"%016llx",sym,0);
  fprintf((FILE *)file," %s",psVar7);
  bVar2 = *(byte *)&sym->sy_flags;
  psVar7 = sym;
  if (((bVar2 & 1) == 0) || (psVar7 = (sym->sy_value).X_op_symbol, (segT)sym->bsym == reg_section))
  {
    if (psVar7->sy_frag != &zero_address_frag) {
      fwrite(" frag ",1,6,(FILE *)file);
      fprintf((FILE *)file,"%016llx",psVar7->sy_frag,0);
    }
    bVar2 = *(byte *)&psVar7->sy_flags;
    if ((bVar2 & 2) != 0) {
      fwrite(" written",1,8,(FILE *)file);
      bVar2 = *(byte *)&psVar7->sy_flags;
    }
    if ((bVar2 & 4) == 0) {
      if ((bVar2 & 8) != 0) {
        fwrite(" resolving",1,10,(FILE *)file);
        bVar2 = *(byte *)&psVar7->sy_flags;
      }
    }
    else {
      fwrite(" resolved",1,9,(FILE *)file);
      bVar2 = *(byte *)&psVar7->sy_flags;
    }
    if ((bVar2 & 0x10) == 0) {
      if ((bVar2 & 0x20) == 0) goto LAB_00041d55;
LAB_00041eef:
      fwrite(" used",1,5,(FILE *)file);
      iVar3 = S_IS_LOCAL(psVar7);
      if (iVar3 != 0) goto LAB_00041f17;
LAB_00041d69:
      iVar3 = S_IS_EXTERNAL(psVar7);
      if (iVar3 == 0) goto LAB_00041d7d;
LAB_00041f3f:
      fwrite(" extern",1,7,(FILE *)file);
      iVar3 = S_IS_WEAK(psVar7);
    }
    else {
      fwrite(" used-in-reloc",1,0xe,(FILE *)file);
      if (((uint)psVar7->sy_flags & 0x20) != 0) goto LAB_00041eef;
LAB_00041d55:
      iVar3 = S_IS_LOCAL(psVar7);
      if (iVar3 == 0) goto LAB_00041d69;
LAB_00041f17:
      fwrite(" local",1,6,(FILE *)file);
      iVar3 = S_IS_EXTERNAL(psVar7);
      if (iVar3 != 0) goto LAB_00041f3f;
LAB_00041d7d:
      iVar3 = S_IS_WEAK(psVar7);
    }
    if (iVar3 != 0) {
      fwrite(&DAT_0005bc16,1,5,(FILE *)file);
    }
    paVar4 = (segT)psVar7->bsym;
    if (((uint)psVar7->sy_flags & 1) == 0) {
      if (((uint)paVar4->prev & 4) != 0) {
LAB_00042130:
        fwrite(" debug",1,6,(FILE *)file);
        paVar4 = (segT)psVar7->bsym;
        if (((uint)psVar7->sy_flags & 1) != 0) {
          if (paVar4 == reg_section) {
            psVar5 = (psVar7->sy_value).X_op_symbol;
            goto LAB_0004219c;
          }
          goto LAB_00041e70;
        }
      }
      if ((undefined *)paVar4->flags != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;
      goto LAB_00041dbc;
    }
    if (reg_section == paVar4) {
      psVar5 = (psVar7->sy_value).X_op_symbol;
      if ((psVar5->bsym->flags & 4) != 0) goto LAB_00042130;
LAB_0004219c:
      if (psVar5->bsym->section == (bfd_section *)(PTR__bfd_std_section_00077fa0 + 0xc0))
      goto LAB_00041cce;
LAB_00041e84:
      fwrite(" defined",1,8,(FILE *)file);
      goto LAB_00041cce;
    }
LAB_00041e70:
    if (paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;
LAB_00041ce2:
    if (reg_section == paVar4) {
      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 2) != 0) {
LAB_00041fc0:
        fwrite(" weakrefr",1,9,(FILE *)file);
        if (((uint)psVar7->sy_flags & 1) == 0) goto LAB_00041dc6;
        paVar4 = (segT)psVar7->bsym;
        if (reg_section != paVar4) goto LAB_00041dd8;
      }
      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 4) != 0) goto LAB_00041ff8;
LAB_00042102:
      psVar5 = (psVar7->sy_value).X_op_symbol;
      goto LAB_00041dd2;
    }
  }
  else {
    if ((psVar7 != (symbolS *)0x0) && (psVar7 != (symbolS *)PTR_zero_address_frag_00077f60)) {
      fwrite(" frag ",1,6,(FILE *)file);
      fprintf((FILE *)file,"%016llx",(sym->sy_value).X_op_symbol,0);
      bVar2 = *(byte *)&sym->sy_flags;
    }
    if ((bVar2 & 4) != 0) {
      fwrite(" resolved",1,9,(FILE *)file);
    }
    fwrite(" local",1,6,(FILE *)file);
    psVar7 = sym;
LAB_00041cce:
    if (((uint)psVar7->sy_flags & 1) != 0) {
      paVar4 = (segT)psVar7->bsym;
      goto LAB_00041ce2;
    }
LAB_00041dbc:
    if (((psVar7->sy_flags).field_0x1 & 2) != 0) goto LAB_00041fc0;
LAB_00041dc6:
    psVar5 = psVar7;
    if (((psVar7->sy_flags).field_0x1 & 4) != 0) {
LAB_00041ff8:
      fwrite(" weakrefd",1,9,(FILE *)file);
      psVar5 = psVar7;
      if (((uint)psVar7->sy_flags & 1) != 0) {
        paVar4 = (segT)psVar7->bsym;
        if (reg_section == paVar4) goto LAB_00042102;
        goto LAB_00041dd8;
      }
    }
LAB_00041dd2:
    paVar4 = psVar5->bsym->section;
  }
LAB_00041dd8:
  fprintf((FILE *)file," %s",paVar4->name);
  sVar1 = psVar7->sy_flags;
  if (((uint)sVar1 & 1) == 0) {
    psVar5 = psVar7;
    if (((uint)sVar1 & 4) != 0) {
LAB_00041ea6:
      paVar4 = psVar5->bsym->section;
LAB_00041e13:
      if ((paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) && (expr_section != paVar4)) {
        vVar8 = S_GET_VALUE(psVar7);
        fprintf((FILE *)file," %lx",(int)vVar8);
      }
      goto LAB_00041e47;
    }
    if (7 < indent_level) goto LAB_00041e47;
    paVar6 = psVar7->bsym;
LAB_00041ec8:
    paVar4 = paVar6->section;
  }
  else {
    paVar4 = (segT)psVar7->bsym;
    if (paVar4 == reg_section) {
      psVar5 = (psVar7->sy_value).X_op_symbol;
      if (((uint)psVar5->sy_flags & 4) != 0) goto LAB_00041ea6;
      if (7 < indent_level) goto LAB_00041e47;
      paVar6 = psVar5->bsym;
      goto LAB_00041ec8;
    }
    if (((uint)sVar1 & 4) != 0) goto LAB_00041e13;
    if (7 < indent_level) goto LAB_00041e47;
  }
  if (paVar4 == (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;
  indent_level = indent_level + 1;
  puVar9 = &DAT_00057aaa;
  fprintf((FILE *)file,"\n%*s<",indent_level * 4,&DAT_00057aaa);
  if (((uint)psVar7->sy_flags & 1) == 0) {
LAB_000421c3:
    print_expr_1(file,&psVar7->sy_value);
  }
  else {
    if ((segT)psVar7->bsym == reg_section) {
      psVar7 = (psVar7->sy_value).X_op_symbol;
      goto LAB_000421c3;
    }
    fprintf((FILE *)file,"constant %lx",(int)(psVar7->sy_value).X_add_number,puVar9);
  }
  fputc(0x3e,(FILE *)file);
  indent_level = indent_level + -1;
LAB_00041e47:
  fflush((FILE *)file);
  return;
}



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

void FUN_00041bd0(FILE *param_1,byte *param_2)

{
  byte bVar1;
  int iVar2;
  undefined4 *puVar3;
  undefined4 uVar4;
  byte *pbVar5;
  byte *pbVar6;
  char *pcVar7;
  undefined *puVar8;
  
  puVar3 = *(undefined4 **)(param_2 + 4);
  if ((*param_2 & 1) == 0) {
LAB_00041c16:
    pcVar7 = (char *)puVar3[1];
    if (pcVar7 == (char *)0x0) goto LAB_00041c03;
LAB_00041c1d:
    if (*pcVar7 == '\0') {
      pcVar7 = "(unnamed)";
    }
  }
  else {
    if (DAT_00081410 == puVar3) {
      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);
      goto LAB_00041c16;
    }
    pcVar7 = *(char **)(param_2 + 8);
    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;
LAB_00041c03:
    pcVar7 = "(unnamed)";
  }
  fwrite(&DAT_0005bbc8,1,4,param_1);
  fprintf(param_1,"%016llx",param_2,0);
  fprintf(param_1," %s",pcVar7);
  bVar1 = *param_2;
  pbVar6 = param_2;
  if (((bVar1 & 1) == 0) ||
     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)) {
    if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {
      fwrite(" frag ",1,6,param_1);
      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);
    }
    bVar1 = *pbVar6;
    if ((bVar1 & 2) != 0) {
      fwrite(" written",1,8,param_1);
      bVar1 = *pbVar6;
    }
    if ((bVar1 & 4) == 0) {
      if ((bVar1 & 8) != 0) {
        fwrite(" resolving",1,10,param_1);
        bVar1 = *pbVar6;
      }
    }
    else {
      fwrite(" resolved",1,9,param_1);
      bVar1 = *pbVar6;
    }
    if ((bVar1 & 0x10) == 0) {
      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;
LAB_00041eef:
      fwrite(" used",1,5,param_1);
      iVar2 = FUN_0003df00(pbVar6);
      if (iVar2 != 0) goto LAB_00041f17;
LAB_00041d69:
      iVar2 = FUN_0003dc20(pbVar6);
      if (iVar2 == 0) goto LAB_00041d7d;
LAB_00041f3f:
      fwrite(" extern",1,7,param_1);
      iVar2 = FUN_0003dc90(pbVar6);
    }
    else {
      fwrite(" used-in-reloc",1,0xe,param_1);
      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;
LAB_00041d55:
      iVar2 = FUN_0003df00(pbVar6);
      if (iVar2 == 0) goto LAB_00041d69;
LAB_00041f17:
      fwrite(" local",1,6,param_1);
      iVar2 = FUN_0003dc20(pbVar6);
      if (iVar2 != 0) goto LAB_00041f3f;
LAB_00041d7d:
      iVar2 = FUN_0003dc90(pbVar6);
    }
    if (iVar2 != 0) {
      fwrite(" weak",1,5,param_1);
    }
    puVar3 = *(undefined4 **)(pbVar6 + 4);
    if ((*pbVar6 & 1) == 0) {
      if ((*(byte *)(puVar3 + 4) & 4) != 0) {
LAB_00042130:
        fwrite(" debug",1,6,param_1);
        puVar3 = *(undefined4 **)(pbVar6 + 4);
        if ((*pbVar6 & 1) != 0) {
          if (puVar3 == DAT_00081410) {
            iVar2 = *(int *)(pbVar6 + 0xc);
            goto LAB_0004219c;
          }
          goto LAB_00041e70;
        }
      }
      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;
      goto LAB_00041dbc;
    }
    if (DAT_00081410 == puVar3) {
      iVar2 = *(int *)(pbVar6 + 0xc);
      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;
LAB_0004219c:
      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)
      goto LAB_00041cce;
LAB_00041e84:
      fwrite(" defined",1,8,param_1);
      goto LAB_00041cce;
    }
LAB_00041e70:
    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;
LAB_00041ce2:
    if (DAT_00081410 == puVar3) {
      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {
LAB_00041fc0:
        fwrite(" weakrefr",1,9,param_1);
        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;
        puVar3 = *(undefined4 **)(pbVar6 + 4);
        if (DAT_00081410 != puVar3) goto LAB_00041dd8;
      }
      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;
LAB_00042102:
      pbVar5 = *(byte **)(pbVar6 + 0xc);
      goto LAB_00041dd2;
    }
  }
  else {
    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {
      fwrite(" frag ",1,6,param_1);
      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);
      bVar1 = *param_2;
    }
    if ((bVar1 & 4) != 0) {
      fwrite(" resolved",1,9,param_1);
    }
    fwrite(" local",1,6,param_1);
    pbVar6 = param_2;
LAB_00041cce:
    if ((*pbVar6 & 1) != 0) {
      puVar3 = *(undefined4 **)(pbVar6 + 4);
      goto LAB_00041ce2;
    }
LAB_00041dbc:
    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;
LAB_00041dc6:
    pbVar5 = pbVar6;
    if ((pbVar6[1] & 4) != 0) {
LAB_00041ff8:
      fwrite(" weakrefd",1,9,param_1);
      pbVar5 = pbVar6;
      if ((*pbVar6 & 1) != 0) {
        puVar3 = *(undefined4 **)(pbVar6 + 4);
        if (DAT_00081410 == puVar3) goto LAB_00042102;
        goto LAB_00041dd8;
      }
    }
LAB_00041dd2:
    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);
  }
LAB_00041dd8:
  fprintf(param_1," %s",*puVar3);
  bVar1 = *pbVar6;
  if ((bVar1 & 1) == 0) {
    pbVar5 = pbVar6;
    if ((bVar1 & 4) != 0) {
LAB_00041ea6:
      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);
LAB_00041e13:
      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&
         (DAT_00081360 != puVar3)) {
        uVar4 = FUN_0003f930();
        fprintf(param_1," %lx",uVar4);
      }
      goto LAB_00041e47;
    }
    if (7 < DAT_0008164c) goto LAB_00041e47;
    iVar2 = *(int *)(pbVar6 + 4);
LAB_00041ec8:
    puVar3 = *(undefined4 **)(iVar2 + 0x14);
  }
  else {
    puVar3 = *(undefined4 **)(pbVar6 + 4);
    if (puVar3 == DAT_00081410) {
      pbVar5 = *(byte **)(pbVar6 + 0xc);
      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;
      if (7 < DAT_0008164c) goto LAB_00041e47;
      iVar2 = *(int *)(pbVar5 + 4);
      goto LAB_00041ec8;
    }
    if ((bVar1 & 4) != 0) goto LAB_00041e13;
    if (7 < DAT_0008164c) goto LAB_00041e47;
  }
  if (puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;
  DAT_0008164c = DAT_0008164c + 1;
  puVar8 = &DAT_00057aaa;
  fprintf(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa);
  if ((*pbVar6 & 1) == 0) {
LAB_000421c3:
    FUN_00041730(param_1,pbVar6 + 8);
  }
  else {
    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {
      pbVar6 = *(byte **)(pbVar6 + 0xc);
      goto LAB_000421c3;
    }
    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);
  }
  fputc(0x3e,param_1);
  DAT_0008164c = DAT_0008164c + -1;
LAB_00041e47:
  fflush(param_1);
  return;
}


PUSH EBP
PUSH EDI
PUSH ESI
PUSH EBX
CALL 0x00016070
ADD EBX,0x36427
SUB ESP,0x1c
MOV ESI,dword ptr [ESP + 0x34]
MOV EBP,dword ptr [ESP + 0x30]
MOV EAX,dword ptr [ESI + 0x4]
TEST byte ptr [ESI],0x1
JZ 0x00041c16
LEA EDX,[EBX + 0x9410]
CMP dword ptr [EDX],EAX
JZ 0x00041c10
MOV EDI,dword ptr [ESI + 0x8]
TEST EDI,EDI
JNZ 0x00041c1d
LEA EDI,[EBX + 0xfffe3bbe]
JMP 0x00041c29
MOV EAX,dword ptr [ESI + 0xc]
MOV EAX,dword ptr [EAX + 0x4]
MOV EDI,dword ptr [EAX + 0x4]
TEST EDI,EDI
JZ 0x00041c03
CMP byte ptr [EDI],0x0
LEA EAX,[EBX + 0xfffe3bbe]
CMOVZ EDI,EAX
LEA EAX,[EBX + 0xfffe3bc8]
PUSH EBP
PUSH 0x4
PUSH 0x1
PUSH EAX
CALL 0x00014300
XOR EDX,EDX
LEA EAX,[EBX + 0xfffe1ab3]
PUSH EDX
PUSH ESI
MOV dword ptr [ESP + 0x24],EAX
PUSH EAX
PUSH EBP
CALL 0x000144a0
ADD ESP,0x1c
PUSH EDI
LEA EDI,[EBX + 0xfffe1a27]
PUSH EDI
PUSH EBP
CALL 0x000144a0
MOVZX EAX,byte ptr [ESI]
ADD ESP,0x10
TEST AL,0x1
JZ 0x00041cfa
LEA EDX,[EBX + 0x9410]
MOV ECX,dword ptr [ESI + 0xc]
MOV EDX,dword ptr [EDX]
CMP dword ptr [ESI + 0x4],EDX
JZ 0x00041cf8
TEST ECX,ECX
JZ 0x00041cb2
CMP ECX,dword ptr [EBX + 0xffffff60]
JZ 0x00041cb2
LEA EAX,[EBX + 0xfffe3bcd]
PUSH EBP
PUSH 0x6
PUSH 0x1
PUSH EAX
CALL 0x00014300
MOV EAX,dword ptr [ESI + 0xc]
XOR EDX,EDX
PUSH EDX
PUSH EAX
PUSH dword ptr [ESP + 0x24]
PUSH EBP
CALL 0x000144a0
MOVZX EAX,byte ptr [ESI]
ADD ESP,0x20
TEST AL,0x4
JNZ 0x00042110
LEA EAX,[EBX + 0xfffe3bde]
PUSH EBP
PUSH 0x6
PUSH 0x1
PUSH EAX
CALL 0x00014300
ADD ESP,0x10
TEST byte ptr [ESI],0x1
JZ 0x00041dbc
LEA EDX,[EBX + 0x9410]
MOV EAX,dword ptr [ESI + 0x4]
MOV EDX,dword ptr [EDX]
CMP EDX,EAX
JZ 0x000420e8
MOV EDX,ESI
JMP 0x00041dd8
MOV ESI,ECX
LEA EAX,[EBX + 0x93a0]
CMP dword ptr [ESI + 0x24],EAX
JZ 0x00041d2a
LEA EAX,[EBX + 0xfffe3bcd]
PUSH EBP
PUSH 0x6
PUSH 0x1
PUSH EAX
CALL 0x00014300
MOV EAX,dword ptr [ESI + 0x24]
XOR EDX,EDX
PUSH EDX
PUSH EAX
PUSH dword ptr [ESP + 0x24]
PUSH EBP
CALL 0x000144a0
ADD ESP,0x20
MOVZX EAX,byte ptr [ESI]
TEST AL,0x2
JNZ 0x00041fa0
TEST AL,0x4
JNZ 0x00041f80
TEST AL,0x8
JNZ 0x000420c8
TEST AL,0x10
JNZ 0x00041ed0
TEST AL,0x20
JNZ 0x00041eef
SUB ESP,0xc
PUSH ESI
CALL 0x0003df00
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00041f17
SUB ESP,0xc
PUSH ESI
CALL 0x0003dc20
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00041f3f
SUB ESP,0xc
PUSH ESI
CALL 0x0003dc90
ADD ESP,0x10
TEST EAX,EAX
JNZ 0x00041f67
MOV EAX,dword ptr [ESI + 0x4]
TEST byte ptr [ESI],0x1
JNZ 0x00041e60
TEST byte ptr [EAX + 0x10],0x4
JNZ 0x00042130
MOV EDX,dword ptr [EBX + 0xffffffa0]
ADD EDX,0xc0
CMP dword ptr [EAX + 0x14],EDX
JNZ 0x00041e84
TEST byte ptr [ESI + 0x1],0x2
JNZ 0x00041fc0
MOV EDX,ESI
TEST byte ptr [ESI + 0x1],0x4
JNZ 0x00041ff8
MOV EAX,dword ptr [ESI + 0x4]
MOV EAX,dword ptr [EAX + 0x14]
MOV dword ptr [ESP + 0xc],EDX
SUB ESP,0x4
PUSH dword ptr [EAX]
PUSH EDI
PUSH EBP
CALL 0x000144a0
MOV EDX,dword ptr [ESP + 0x1c]
ADD ESP,0x10
MOVZX EAX,byte ptr [EDX]
TEST AL,0x1
JZ 0x00041ea0
LEA ESI,[EBX + 0x9410]
MOV ECX,dword ptr [EDX + 0x4]
CMP ECX,dword ptr [ESI]
JZ 0x00042168
TEST AL,0x4
JZ 0x00042030
MOV EAX,dword ptr [EBX + 0xffffffa0]
ADD EAX,0xc0
CMP ECX,EAX
JZ 0x00041e47
LEA EAX,[EBX + 0x9360]
CMP dword ptr [EAX],ECX
JZ 0x00041e47
MOV EAX,EDX
CALL 0x0003f930
SUB ESP,0x4
PUSH EAX
LEA EAX,[EBX + 0xfffe3afb]
PUSH EAX
PUSH EBP
CALL 0x000144a0
ADD ESP,0x10
SUB ESP,0xc
PUSH EBP
CALL 0x000140d0
ADD ESP,0x2c
POP EBX
POP ESI
POP EDI
POP EBP
RET
LEA EDX,[EBX + 0x9410]
MOV EDX,dword ptr [EDX]
CMP EDX,EAX
JZ 0x00042190
MOV ECX,dword ptr [EBX + 0xffffffa0]
ADD ECX,0xc0
CMP EAX,ECX
JZ 0x00041ce2
LEA EAX,[EBX + 0xfffe3c23]
PUSH EBP
PUSH 0x8
PUSH 0x1
PUSH EAX
CALL 0x00014300
ADD ESP,0x10
JMP 0x00041cce
TEST AL,0x4
JZ 0x00041eb8
MOV ECX,EDX
MOV EAX,dword ptr [ECX + 0x4]
MOV ECX,dword ptr [EAX + 0x14]
JMP 0x00041e13
LEA ESI,[EBX + 0x964c]
MOV EAX,dword ptr [ESI]
CMP EAX,0x7
JG 0x00041e47
MOV ECX,dword ptr [EDX + 0x4]
MOV ECX,dword ptr [ECX + 0x14]
JMP 0x00042041
LEA EAX,[EBX + 0xfffe3bf9]
PUSH EBP
PUSH 0xe
PUSH 0x1
PUSH EAX
CALL 0x00014300
MOVZX EAX,byte ptr [ESI]
ADD ESP,0x10
TEST AL,0x20
JZ 0x00041d55
LEA EAX,[EBX + 0xfffe3c08]
PUSH EBP
PUSH 0x5
PUSH 0x1
PUSH EAX
CALL 0x00014300
ADD ESP,0x10
SUB ESP,0xc
PUSH ESI
CALL 0x0003df00
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00041d69
LEA EAX,[EBX + 0xfffe3bde]
PUSH EBP
PUSH 0x6
PUSH 0x1
PUSH EAX
CALL 0x00014300
ADD ESP,0x10
SUB ESP,0xc
PUSH ESI
CALL 0x0003dc20
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00041d7d
LEA EAX,[EBX + 0xfffe3c0e]
PUSH EBP
PUSH 0x7
PUSH 0x1
PUSH EAX
CALL 0x00014300
ADD ESP,0x10
SUB ESP,0xc
PUSH ESI
CALL 0x0003dc90
ADD ESP,0x10
TEST EAX,EAX
JZ 0x00041d91
LEA EAX,[EBX + 0xfffe3c16]
PUSH EBP
PUSH 0x5
PUSH 0x1
PUSH EAX
CALL 0x00014300
ADD ESP,0x10
JMP 0x00041d91
LEA EAX,[EBX + 0xfffe3bd4]
PUSH EBP
PUSH 0x9
PUSH 0x1
PUSH EAX
CALL 0x00014300
MOVZX EAX,byte ptr [ESI]
ADD ESP,0x10
JMP 0x00041d45
LEA EAX,[EBX + 0xfffe3be5]
PUSH EBP
PUSH 0x8
PUSH 0x1
PUSH EAX
CALL 0x00014300
MOVZX EAX,byte ptr [ESI]
ADD ESP,0x10
JMP 0x00041d35
LEA EAX,[EBX + 0xfffe3c2c]
PUSH EBP
PUSH 0x9
PUSH 0x1
PUSH EAX
CALL 0x00014300
ADD ESP,0x10
TEST byte ptr [ESI],0x1
JZ 0x00041dc6
LEA EDX,[EBX + 0x9410]
MOV EAX,dword ptr [ESI + 0x4]
CMP dword ptr [EDX],EAX
JZ 0x000420f5
MOV EDX,ESI
JMP 0x00041dd8
LEA EAX,[EBX + 0xfffe3c36]
PUSH EBP
PUSH 0x9
PUSH 0x1
PUSH EAX
CALL 0x00014300
ADD ESP,0x10
MOV EDX,ESI
TEST byte ptr [ESI],0x1
JZ 0x00041dd2
LEA ECX,[EBX + 0x9410]
MOV EAX,dword ptr [ESI + 0x4]
CMP dword ptr [ECX],EAX
JZ 0x00042102
JMP 0x00041dd8
LEA ESI,[EBX + 0x964c]
MOV EAX,dword ptr [ESI]
CMP EAX,0x7
JG 0x00041e47
MOV EDI,dword ptr [EBX + 0xffffffa0]
MOV dword ptr [ESP + 0xc],EDX
ADD EDI,0xc0
CMP ECX,EDI
JZ 0x00041e47
ADD EAX,0x1
LEA ECX,[EBX + 0xfffdfaaa]
MOV dword ptr [ESI],EAX
SHL EAX,0x2
PUSH ECX
PUSH EAX
LEA EAX,[EBX + 0xfffe3b96]
PUSH EAX
PUSH EBP
CALL 0x000144a0
ADD ESP,0x10
MOV EDX,dword ptr [ESP + 0xc]
TEST byte ptr [EDX],0x1
JZ 0x000421c3
LEA EAX,[EBX + 0x9410]
MOV EAX,dword ptr [EAX]
CMP dword ptr [EDX + 0x4],EAX
JZ 0x000421c0
SUB ESP,0x4
LEA EAX,[EBX + 0xfffe3af3]
PUSH dword ptr [EDX + 0x10]
PUSH EAX
PUSH EBP
CALL 0x000144a0
ADD ESP,0x10
SUB ESP,0x8
PUSH EBP
PUSH 0x3e
CALL 0x00014670
SUB dword ptr [ESI],0x1
ADD ESP,0x10
JMP 0x00041e47
LEA EAX,[EBX + 0xfffe3bee]
PUSH EBP
PUSH 0xa
PUSH 0x1
PUSH EAX
CALL 0x00014300
MOVZX EAX,byte ptr [ESI]
ADD ESP,0x10
JMP 0x00041d45
MOV EAX,dword ptr [ESI + 0xc]
TEST byte ptr [EAX + 0x1],0x2
JNZ 0x00041fc0
MOV EAX,dword ptr [ESI + 0xc]
TEST byte ptr [EAX + 0x1],0x4
JNZ 0x00041ff8
MOV EDX,ESI
MOV ESI,dword ptr [ESI + 0xc]
JMP 0x00041dd2
LEA EAX,[EBX + 0xfffe3bd4]
PUSH EBP
PUSH 0x9
PUSH 0x1
PUSH EAX
CALL 0x00014300
ADD ESP,0x10
JMP 0x00041cba
LEA EAX,[EBX + 0xfffe3c1c]
PUSH EBP
PUSH 0x6
PUSH 0x1
PUSH EAX
CALL 0x00014300
ADD ESP,0x10
TEST byte ptr [ESI],0x1
MOV EAX,dword ptr [ESI + 0x4]
JZ 0x00041da7
LEA EDX,[EBX + 0x9410]
MOV EDX,dword ptr [EDX]
CMP EAX,EDX
JNZ 0x00041e70
MOV EAX,dword ptr [ESI + 0xc]
JMP 0x0004219c
MOV ECX,dword ptr [EDX + 0xc]
TEST byte ptr [ECX],0x4
JNZ 0x00041ea6
LEA ESI,[EBX + 0x964c]
MOV EAX,dword ptr [ESI]
CMP EAX,0x7
JG 0x00041e47
MOV ECX,dword ptr [ECX + 0x4]
JMP 0x00041ec8
MOV EAX,dword ptr [ESI + 0xc]
MOV EDX,dword ptr [EAX + 0x4]
TEST byte ptr [EDX + 0x10],0x4
JNZ 0x00042130
MOV EDX,dword ptr [EAX + 0x4]
MOV EAX,dword ptr [EBX + 0xffffffa0]
ADD EAX,0xc0
CMP dword ptr [EDX + 0x14],EAX
JZ 0x00041cce
JMP 0x00041e84
MOV EDX,dword ptr [EDX + 0xc]
SUB ESP,0x8
ADD EDX,0x8
PUSH EDX
PUSH EBP
CALL 0x00041730
ADD ESP,0x10
JMP 0x000420ad
(translation_unit "/* WARNING: Function: __i686.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nvoid FUN_00041bd0(FILE *param_1,byte *param_2)\n\n{\n  byte bVar1;\n  int iVar2;\n  undefined4 *puVar3;\n  undefined4 uVar4;\n  byte *pbVar5;\n  byte *pbVar6;\n  char *pcVar7;\n  undefined *puVar8;\n  \n  puVar3 = *(undefined4 **)(param_2 + 4);\n  if ((*param_2 & 1) == 0) {\nLAB_00041c16:\n    pcVar7 = (char *)puVar3[1];\n    if (pcVar7 == (char *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }\n  }\n  else {\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }\n  fwrite(&DAT_0005bbc8,1,4,param_1);\n  fprintf(param_1,"%016llx",param_2,0);\n  fprintf(param_1," %s",pcVar7);\n  bVar1 = *param_2;\n  pbVar6 = param_2;\n  if (((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)) {\n    if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }\n    bVar1 = *pbVar6;\n    if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }\n  }\n  else {\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }\nLAB_00041dd8:\n  fprintf(param_1," %s",*puVar3);\n  bVar1 = *pbVar6;\n  if ((bVar1 & 1) == 0) {\n    pbVar5 = pbVar6;\n    if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n    iVar2 = *(int *)(pbVar6 + 4);\nLAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);\n  }\n  else {\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }\n  if (puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;\n  DAT_0008164c = DAT_0008164c + 1;\n  puVar8 = &DAT_00057aaa;\n  fprintf(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa);\n  if ((*pbVar6 & 1) == 0) {\nLAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);\n  }\n  else {\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }\n  fputc(0x3e,param_1);\n  DAT_0008164c = DAT_0008164c + -1;\nLAB_00041e47:\n  fflush(param_1);\n  return;\n}\n\n" comment (function_definition "void FUN_00041bd0(FILE *param_1,byte *param_2)\n\n{\n  byte bVar1;\n  int iVar2;\n  undefined4 *puVar3;\n  undefined4 uVar4;\n  byte *pbVar5;\n  byte *pbVar6;\n  char *pcVar7;\n  undefined *puVar8;\n  \n  puVar3 = *(undefined4 **)(param_2 + 4);\n  if ((*param_2 & 1) == 0) {\nLAB_00041c16:\n    pcVar7 = (char *)puVar3[1];\n    if (pcVar7 == (char *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }\n  }\n  else {\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }\n  fwrite(&DAT_0005bbc8,1,4,param_1);\n  fprintf(param_1,"%016llx",param_2,0);\n  fprintf(param_1," %s",pcVar7);\n  bVar1 = *param_2;\n  pbVar6 = param_2;\n  if (((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)) {\n    if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }\n    bVar1 = *pbVar6;\n    if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }\n  }\n  else {\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }\nLAB_00041dd8:\n  fprintf(param_1," %s",*puVar3);\n  bVar1 = *pbVar6;\n  if ((bVar1 & 1) == 0) {\n    pbVar5 = pbVar6;\n    if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n    iVar2 = *(int *)(pbVar6 + 4);\nLAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);\n  }\n  else {\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }\n  if (puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;\n  DAT_0008164c = DAT_0008164c + 1;\n  puVar8 = &DAT_00057aaa;\n  fprintf(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa);\n  if ((*pbVar6 & 1) == 0) {\nLAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);\n  }\n  else {\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }\n  fputc(0x3e,param_1);\n  DAT_0008164c = DAT_0008164c + -1;\nLAB_00041e47:\n  fflush(param_1);\n  return;\n}" primitive_type (function_declarator "FUN_00041bd0(FILE *param_1,byte *param_2)" identifier (parameter_list "(FILE *param_1,byte *param_2)" ( (parameter_declaration "FILE *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "byte *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  byte bVar1;\n  int iVar2;\n  undefined4 *puVar3;\n  undefined4 uVar4;\n  byte *pbVar5;\n  byte *pbVar6;\n  char *pcVar7;\n  undefined *puVar8;\n  \n  puVar3 = *(undefined4 **)(param_2 + 4);\n  if ((*param_2 & 1) == 0) {\nLAB_00041c16:\n    pcVar7 = (char *)puVar3[1];\n    if (pcVar7 == (char *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }\n  }\n  else {\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }\n  fwrite(&DAT_0005bbc8,1,4,param_1);\n  fprintf(param_1,"%016llx",param_2,0);\n  fprintf(param_1," %s",pcVar7);\n  bVar1 = *param_2;\n  pbVar6 = param_2;\n  if (((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)) {\n    if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }\n    bVar1 = *pbVar6;\n    if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }\n  }\n  else {\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }\nLAB_00041dd8:\n  fprintf(param_1," %s",*puVar3);\n  bVar1 = *pbVar6;\n  if ((bVar1 & 1) == 0) {\n    pbVar5 = pbVar6;\n    if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n    iVar2 = *(int *)(pbVar6 + 4);\nLAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);\n  }\n  else {\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }\n  if (puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;\n  DAT_0008164c = DAT_0008164c + 1;\n  puVar8 = &DAT_00057aaa;\n  fprintf(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa);\n  if ((*pbVar6 & 1) == 0) {\nLAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);\n  }\n  else {\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }\n  fputc(0x3e,param_1);\n  DAT_0008164c = DAT_0008164c + -1;\nLAB_00041e47:\n  fflush(param_1);\n  return;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "undefined4 uVar4;" type_identifier identifier ;) (declaration "byte *pbVar5;" type_identifier (pointer_declarator "*pbVar5" * identifier) ;) (declaration "byte *pbVar6;" type_identifier (pointer_declarator "*pbVar6" * identifier) ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "undefined *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (expression_statement "puVar3 = *(undefined4 **)(param_2 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(param_2 + 4)" identifier = (pointer_expression "*(undefined4 **)(param_2 + 4)" * (cast_expression "(undefined4 **)(param_2 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) ))))) ;) (if_statement "if ((*param_2 & 1) == 0) {\nLAB_00041c16:\n    pcVar7 = (char *)puVar3[1];\n    if (pcVar7 == (char *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }\n  }\n  else {\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }" if (parenthesized_expression "((*param_2 & 1) == 0)" ( (binary_expression "(*param_2 & 1) == 0" (parenthesized_expression "(*param_2 & 1)" ( (binary_expression "*param_2 & 1" (pointer_expression "*param_2" * identifier) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_00041c16:\n    pcVar7 = (char *)puVar3[1];\n    if (pcVar7 == (char *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }\n  }" { (labeled_statement "LAB_00041c16:\n    pcVar7 = (char *)puVar3[1];" statement_identifier : (expression_statement "pcVar7 = (char *)puVar3[1];" (assignment_expression "pcVar7 = (char *)puVar3[1]" identifier = (cast_expression "(char *)puVar3[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar3[1]" identifier [ number_literal ]))) ;)) (if_statement "if (pcVar7 == (char *)0x0) goto LAB_00041c03;" if (parenthesized_expression "(pcVar7 == (char *)0x0)" ( (binary_expression "pcVar7 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00041c03;" goto statement_identifier ;)) (labeled_statement "LAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }" statement_identifier : (if_statement "if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }" if (parenthesized_expression "(*pcVar7 == '\0')" ( (binary_expression "*pcVar7 == '\0'" (pointer_expression "*pcVar7" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      pcVar7 = "(unnamed)";\n    }" { (expression_statement "pcVar7 = "(unnamed)";" (assignment_expression "pcVar7 = "(unnamed)"" identifier = (string_literal ""(unnamed)"" " string_content ")) ;) }))) }) (else_clause "else {\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }" else (compound_statement "{\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }" { (if_statement "if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }" if (parenthesized_expression "(DAT_00081410 == puVar3)" ( (binary_expression "DAT_00081410 == puVar3" identifier == identifier) )) (compound_statement "{\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }" { (expression_statement "puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);" (assignment_expression "puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" identifier = (pointer_expression "*(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" * (cast_expression "(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(param_2 + 0xc) + 4)" ( (binary_expression "*(int *)(param_2 + 0xc) + 4" (pointer_expression "*(int *)(param_2 + 0xc)" * (cast_expression "(int *)(param_2 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) )))) + number_literal) ))))) ;) (goto_statement "goto LAB_00041c16;" goto statement_identifier ;) })) (expression_statement "pcVar7 = *(char **)(param_2 + 8);" (assignment_expression "pcVar7 = *(char **)(param_2 + 8)" identifier = (pointer_expression "*(char **)(param_2 + 8)" * (cast_expression "(char **)(param_2 + 8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) ))))) ;) (if_statement "if (pcVar7 != (char *)0x0) goto LAB_00041c1d;" if (parenthesized_expression "(pcVar7 != (char *)0x0)" ( (binary_expression "pcVar7 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00041c1d;" goto statement_identifier ;)) (labeled_statement "LAB_00041c03:\n    pcVar7 = "(unnamed)";" statement_identifier : (expression_statement "pcVar7 = "(unnamed)";" (assignment_expression "pcVar7 = "(unnamed)"" identifier = (string_literal ""(unnamed)"" " string_content ")) ;)) }))) (expression_statement "fwrite(&DAT_0005bbc8,1,4,param_1);" (call_expression "fwrite(&DAT_0005bbc8,1,4,param_1)" identifier (argument_list "(&DAT_0005bbc8,1,4,param_1)" ( (pointer_expression "&DAT_0005bbc8" & identifier) , number_literal , number_literal , identifier ))) ;) (expression_statement "fprintf(param_1,"%016llx",param_2,0);" (call_expression "fprintf(param_1,"%016llx",param_2,0)" identifier (argument_list "(param_1,"%016llx",param_2,0)" ( identifier , (string_literal ""%016llx"" " string_content ") , identifier , number_literal ))) ;) (expression_statement "fprintf(param_1," %s",pcVar7);" (call_expression "fprintf(param_1," %s",pcVar7)" identifier (argument_list "(param_1," %s",pcVar7)" ( identifier , (string_literal "" %s"" " string_content ") , identifier ))) ;) (expression_statement "bVar1 = *param_2;" (assignment_expression "bVar1 = *param_2" identifier = (pointer_expression "*param_2" * identifier)) ;) (expression_statement "pbVar6 = param_2;" (assignment_expression "pbVar6 = param_2" identifier = identifier) ;) (if_statement "if (((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)) {\n    if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }\n    bVar1 = *pbVar6;\n    if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }\n  }\n  else {\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }" if (parenthesized_expression "(((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410))" ( (binary_expression "((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)" (parenthesized_expression "((bVar1 & 1) == 0)" ( (binary_expression "(bVar1 & 1) == 0" (parenthesized_expression "(bVar1 & 1)" ( (binary_expression "bVar1 & 1" identifier & number_literal) )) == number_literal) )) || (parenthesized_expression "(pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)" ( (comma_expression "pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410" (assignment_expression "pbVar6 = *(byte **)(param_2 + 0xc)" identifier = (pointer_expression "*(byte **)(param_2 + 0xc)" * (cast_expression "(byte **)(param_2 + 0xc)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) ))))) , (binary_expression "*(undefined4 **)(param_2 + 4) == DAT_00081410" (pointer_expression "*(undefined4 **)(param_2 + 4)" * (cast_expression "(undefined4 **)(param_2 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) )))) == identifier)) ))) )) (compound_statement "{\n    if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }\n    bVar1 = *pbVar6;\n    if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }\n  }" { (if_statement "if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }" if (parenthesized_expression "(*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0)" ( (binary_expression "*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0" (pointer_expression "*(undefined4 **)(pbVar6 + 0x24)" * (cast_expression "(undefined4 **)(pbVar6 + 0x24)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 0x24)" ( (binary_expression "pbVar6 + 0x24" identifier + number_literal) )))) != (pointer_expression "&DAT_000813a0" & identifier)) )) (compound_statement "{\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }" { (expression_statement "fwrite(" frag ",1,6,param_1);" (call_expression "fwrite(" frag ",1,6,param_1)" identifier (argument_list "(" frag ",1,6,param_1)" ( (string_literal "" frag "" " string_content ") , number_literal , number_literal , identifier ))) ;) (expression_statement "fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);" (call_expression "fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0)" identifier (argument_list "(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0)" ( identifier , (string_literal ""%016llx"" " string_content ") , (pointer_expression "*(undefined4 *)(pbVar6 + 0x24)" * (cast_expression "(undefined4 *)(pbVar6 + 0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar6 + 0x24)" ( (binary_expression "pbVar6 + 0x24" identifier + number_literal) )))) , number_literal ))) ;) })) (expression_statement "bVar1 = *pbVar6;" (assignment_expression "bVar1 = *pbVar6" identifier = (pointer_expression "*pbVar6" * identifier)) ;) (if_statement "if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }" if (parenthesized_expression "((bVar1 & 2) != 0)" ( (binary_expression "(bVar1 & 2) != 0" (parenthesized_expression "(bVar1 & 2)" ( (binary_expression "bVar1 & 2" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }" { (expression_statement "fwrite(" written",1,8,param_1);" (call_expression "fwrite(" written",1,8,param_1)" identifier (argument_list "(" written",1,8,param_1)" ( (string_literal "" written"" " string_content ") , number_literal , number_literal , identifier ))) ;) (expression_statement "bVar1 = *pbVar6;" (assignment_expression "bVar1 = *pbVar6" identifier = (pointer_expression "*pbVar6" * identifier)) ;) })) (if_statement "if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }" if (parenthesized_expression "((bVar1 & 4) == 0)" ( (binary_expression "(bVar1 & 4) == 0" (parenthesized_expression "(bVar1 & 4)" ( (binary_expression "bVar1 & 4" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }" { (if_statement "if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }" if (parenthesized_expression "((bVar1 & 8) != 0)" ( (binary_expression "(bVar1 & 8) != 0" (parenthesized_expression "(bVar1 & 8)" ( (binary_expression "bVar1 & 8" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }" { (expression_statement "fwrite(" resolving",1,10,param_1);" (call_expression "fwrite(" resolving",1,10,param_1)" identifier (argument_list "(" resolving",1,10,param_1)" ( (string_literal "" resolving"" " string_content ") , number_literal , number_literal , identifier ))) ;) (expression_statement "bVar1 = *pbVar6;" (assignment_expression "bVar1 = *pbVar6" identifier = (pointer_expression "*pbVar6" * identifier)) ;) })) }) (else_clause "else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }" else (compound_statement "{\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }" { (expression_statement "fwrite(" resolved",1,9,param_1);" (call_expression "fwrite(" resolved",1,9,param_1)" identifier (argument_list "(" resolved",1,9,param_1)" ( (string_literal "" resolved"" " string_content ") , number_literal , number_literal , identifier ))) ;) (expression_statement "bVar1 = *pbVar6;" (assignment_expression "bVar1 = *pbVar6" identifier = (pointer_expression "*pbVar6" * identifier)) ;) }))) (if_statement "if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }" if (parenthesized_expression "((bVar1 & 0x10) == 0)" ( (binary_expression "(bVar1 & 0x10) == 0" (parenthesized_expression "(bVar1 & 0x10)" ( (binary_expression "bVar1 & 0x10" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }" { (if_statement "if ((bVar1 & 0x20) == 0) goto LAB_00041d55;" if (parenthesized_expression "((bVar1 & 0x20) == 0)" ( (binary_expression "(bVar1 & 0x20) == 0" (parenthesized_expression "(bVar1 & 0x20)" ( (binary_expression "bVar1 & 0x20" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00041d55;" goto statement_identifier ;)) (labeled_statement "LAB_00041eef:\n      fwrite(" used",1,5,param_1);" statement_identifier : (expression_statement "fwrite(" used",1,5,param_1);" (call_expression "fwrite(" used",1,5,param_1)" identifier (argument_list "(" used",1,5,param_1)" ( (string_literal "" used"" " string_content ") , number_literal , number_literal , identifier ))) ;)) (expression_statement "iVar2 = FUN_0003df00(pbVar6);" (assignment_expression "iVar2 = FUN_0003df00(pbVar6)" identifier = (call_expression "FUN_0003df00(pbVar6)" identifier (argument_list "(pbVar6)" ( identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_00041f17;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00041f17;" goto statement_identifier ;)) (labeled_statement "LAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);" statement_identifier : (expression_statement "iVar2 = FUN_0003dc20(pbVar6);" (assignment_expression "iVar2 = FUN_0003dc20(pbVar6)" identifier = (call_expression "FUN_0003dc20(pbVar6)" identifier (argument_list "(pbVar6)" ( identifier )))) ;)) (if_statement "if (iVar2 == 0) goto LAB_00041d7d;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00041d7d;" goto statement_identifier ;)) (labeled_statement "LAB_00041f3f:\n      fwrite(" extern",1,7,param_1);" statement_identifier : (expression_statement "fwrite(" extern",1,7,param_1);" (call_expression "fwrite(" extern",1,7,param_1)" identifier (argument_list "(" extern",1,7,param_1)" ( (string_literal "" extern"" " string_content ") , number_literal , number_literal , identifier ))) ;)) (expression_statement "iVar2 = FUN_0003dc90(pbVar6);" (assignment_expression "iVar2 = FUN_0003dc90(pbVar6)" identifier = (call_expression "FUN_0003dc90(pbVar6)" identifier (argument_list "(pbVar6)" ( identifier )))) ;) }) (else_clause "else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }" else (compound_statement "{\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }" { (expression_statement "fwrite(" used-in-reloc",1,0xe,param_1);" (call_expression "fwrite(" used-in-reloc",1,0xe,param_1)" identifier (argument_list "(" used-in-reloc",1,0xe,param_1)" ( (string_literal "" used-in-reloc"" " string_content ") , number_literal , number_literal , identifier ))) ;) (if_statement "if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;" if (parenthesized_expression "((*pbVar6 & 0x20) != 0)" ( (binary_expression "(*pbVar6 & 0x20) != 0" (parenthesized_expression "(*pbVar6 & 0x20)" ( (binary_expression "*pbVar6 & 0x20" (pointer_expression "*pbVar6" * identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00041eef;" goto statement_identifier ;)) (labeled_statement "LAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);" statement_identifier : (expression_statement "iVar2 = FUN_0003df00(pbVar6);" (assignment_expression "iVar2 = FUN_0003df00(pbVar6)" identifier = (call_expression "FUN_0003df00(pbVar6)" identifier (argument_list "(pbVar6)" ( identifier )))) ;)) (if_statement "if (iVar2 == 0) goto LAB_00041d69;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00041d69;" goto statement_identifier ;)) (labeled_statement "LAB_00041f17:\n      fwrite(" local",1,6,param_1);" statement_identifier : (expression_statement "fwrite(" local",1,6,param_1);" (call_expression "fwrite(" local",1,6,param_1)" identifier (argument_list "(" local",1,6,param_1)" ( (string_literal "" local"" " string_content ") , number_literal , number_literal , identifier ))) ;)) (expression_statement "iVar2 = FUN_0003dc20(pbVar6);" (assignment_expression "iVar2 = FUN_0003dc20(pbVar6)" identifier = (call_expression "FUN_0003dc20(pbVar6)" identifier (argument_list "(pbVar6)" ( identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_00041f3f;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00041f3f;" goto statement_identifier ;)) (labeled_statement "LAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);" statement_identifier : (expression_statement "iVar2 = FUN_0003dc90(pbVar6);" (assignment_expression "iVar2 = FUN_0003dc90(pbVar6)" identifier = (call_expression "FUN_0003dc90(pbVar6)" identifier (argument_list "(pbVar6)" ( identifier )))) ;)) }))) (if_statement "if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n      fwrite(" weak",1,5,param_1);\n    }" { (expression_statement "fwrite(" weak",1,5,param_1);" (call_expression "fwrite(" weak",1,5,param_1)" identifier (argument_list "(" weak",1,5,param_1)" ( (string_literal "" weak"" " string_content ") , number_literal , number_literal , identifier ))) ;) })) (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" identifier = (pointer_expression "*(undefined4 **)(pbVar6 + 4)" * (cast_expression "(undefined4 **)(pbVar6 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 4)" ( (binary_expression "pbVar6 + 4" identifier + number_literal) ))))) ;) (if_statement "if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }" if (parenthesized_expression "((*pbVar6 & 1) == 0)" ( (binary_expression "(*pbVar6 & 1) == 0" (parenthesized_expression "(*pbVar6 & 1)" ( (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" * identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }" { (if_statement "if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }" if (parenthesized_expression "((*(byte *)(puVar3 + 4) & 4) != 0)" ( (binary_expression "(*(byte *)(puVar3 + 4) & 4) != 0" (parenthesized_expression "(*(byte *)(puVar3 + 4) & 4)" ( (binary_expression "*(byte *)(puVar3 + 4) & 4" (pointer_expression "*(byte *)(puVar3 + 4)" * (cast_expression "(byte *)(puVar3 + 4)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 4)" ( (binary_expression "puVar3 + 4" identifier + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }" { (labeled_statement "LAB_00042130:\n        fwrite(" debug",1,6,param_1);" statement_identifier : (expression_statement "fwrite(" debug",1,6,param_1);" (call_expression "fwrite(" debug",1,6,param_1)" identifier (argument_list "(" debug",1,6,param_1)" ( (string_literal "" debug"" " string_content ") , number_literal , number_literal , identifier ))) ;)) (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" identifier = (pointer_expression "*(undefined4 **)(pbVar6 + 4)" * (cast_expression "(undefined4 **)(pbVar6 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 4)" ( (binary_expression "pbVar6 + 4" identifier + number_literal) ))))) ;) (if_statement "if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }" if (parenthesized_expression "((*pbVar6 & 1) != 0)" ( (binary_expression "(*pbVar6 & 1) != 0" (parenthesized_expression "(*pbVar6 & 1)" ( (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }" { (if_statement "if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }" if (parenthesized_expression "(puVar3 == DAT_00081410)" ( (binary_expression "puVar3 == DAT_00081410" identifier == identifier) )) (compound_statement "{\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }" { (expression_statement "iVar2 = *(int *)(pbVar6 + 0xc);" (assignment_expression "iVar2 = *(int *)(pbVar6 + 0xc)" identifier = (pointer_expression "*(int *)(pbVar6 + 0xc)" * (cast_expression "(int *)(pbVar6 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar6 + 0xc)" ( (binary_expression "pbVar6 + 0xc" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_0004219c;" goto statement_identifier ;) })) (goto_statement "goto LAB_00041e70;" goto statement_identifier ;) })) })) (if_statement "if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;" if (parenthesized_expression "((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0)" ( (binary_expression "(undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0" (cast_expression "(undefined *)puVar3[5]" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar3[5]" identifier [ number_literal ])) != (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" identifier + number_literal)) )) (goto_statement "goto LAB_00041e84;" goto statement_identifier ;)) (goto_statement "goto LAB_00041dbc;" goto statement_identifier ;) })) (if_statement "if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }" if (parenthesized_expression "(DAT_00081410 == puVar3)" ( (binary_expression "DAT_00081410 == puVar3" identifier == identifier) )) (compound_statement "{\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }" { (expression_statement "iVar2 = *(int *)(pbVar6 + 0xc);" (assignment_expression "iVar2 = *(int *)(pbVar6 + 0xc)" identifier = (pointer_expression "*(int *)(pbVar6 + 0xc)" * (cast_expression "(int *)(pbVar6 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar6 + 0xc)" ( (binary_expression "pbVar6 + 0xc" identifier + number_literal) ))))) ;) (if_statement "if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;" if (parenthesized_expression "((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0)" ( (binary_expression "(*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0" (parenthesized_expression "(*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4)" ( (binary_expression "*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4" (pointer_expression "*(byte *)(*(int *)(iVar2 + 4) + 0x10)" * (cast_expression "(byte *)(*(int *)(iVar2 + 4) + 0x10)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar2 + 4) + 0x10)" ( (binary_expression "*(int *)(iVar2 + 4) + 0x10" (pointer_expression "*(int *)(iVar2 + 4)" * (cast_expression "(int *)(iVar2 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 4)" ( (binary_expression "iVar2 + 4" identifier + number_literal) )))) + number_literal) )))) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00042130;" goto statement_identifier ;)) (labeled_statement "LAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;" statement_identifier : (if_statement "if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;" if (parenthesized_expression "(*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)" ( (binary_expression "*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0" (pointer_expression "*(undefined **)(*(int *)(iVar2 + 4) + 0x14)" * (cast_expression "(undefined **)(*(int *)(iVar2 + 4) + 0x14)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(iVar2 + 4) + 0x14)" ( (binary_expression "*(int *)(iVar2 + 4) + 0x14" (pointer_expression "*(int *)(iVar2 + 4)" * (cast_expression "(int *)(iVar2 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 4)" ( (binary_expression "iVar2 + 4" identifier + number_literal) )))) + number_literal) )))) == (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" identifier + number_literal)) )) (goto_statement "goto LAB_00041cce;" goto statement_identifier ;))) (labeled_statement "LAB_00041e84:\n      fwrite(" defined",1,8,param_1);" statement_identifier : (expression_statement "fwrite(" defined",1,8,param_1);" (call_expression "fwrite(" defined",1,8,param_1)" identifier (argument_list "(" defined",1,8,param_1)" ( (string_literal "" defined"" " string_content ") , number_literal , number_literal , identifier ))) ;)) (goto_statement "goto LAB_00041cce;" goto statement_identifier ;) })) (labeled_statement "LAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;" statement_identifier : (if_statement "if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;" if (parenthesized_expression "(puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0))" ( (binary_expression "puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" identifier != (cast_expression "(undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" identifier + number_literal) )))) )) (goto_statement "goto LAB_00041e84;" goto statement_identifier ;))) (labeled_statement "LAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }" statement_identifier : (if_statement "if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }" if (parenthesized_expression "(DAT_00081410 == puVar3)" ( (binary_expression "DAT_00081410 == puVar3" identifier == identifier) )) (compound_statement "{\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }" { (if_statement "if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }" if (parenthesized_expression "((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0)" ( (binary_expression "(*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0" (parenthesized_expression "(*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2)" ( (binary_expression "*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2" (pointer_expression "*(byte *)(*(int *)(pbVar6 + 0xc) + 1)" * (cast_expression "(byte *)(*(int *)(pbVar6 + 0xc) + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pbVar6 + 0xc) + 1)" ( (binary_expression "*(int *)(pbVar6 + 0xc) + 1" (pointer_expression "*(int *)(pbVar6 + 0xc)" * (cast_expression "(int *)(pbVar6 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar6 + 0xc)" ( (binary_expression "pbVar6 + 0xc" identifier + number_literal) )))) + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }" { (labeled_statement "LAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);" statement_identifier : (expression_statement "fwrite(" weakrefr",1,9,param_1);" (call_expression "fwrite(" weakrefr",1,9,param_1)" identifier (argument_list "(" weakrefr",1,9,param_1)" ( (string_literal "" weakrefr"" " string_content ") , number_literal , number_literal , identifier ))) ;)) (if_statement "if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;" if (parenthesized_expression "((*pbVar6 & 1) == 0)" ( (binary_expression "(*pbVar6 & 1) == 0" (parenthesized_expression "(*pbVar6 & 1)" ( (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" * identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00041dc6;" goto statement_identifier ;)) (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" identifier = (pointer_expression "*(undefined4 **)(pbVar6 + 4)" * (cast_expression "(undefined4 **)(pbVar6 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 4)" ( (binary_expression "pbVar6 + 4" identifier + number_literal) ))))) ;) (if_statement "if (DAT_00081410 != puVar3) goto LAB_00041dd8;" if (parenthesized_expression "(DAT_00081410 != puVar3)" ( (binary_expression "DAT_00081410 != puVar3" identifier != identifier) )) (goto_statement "goto LAB_00041dd8;" goto statement_identifier ;)) })) (if_statement "if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;" if (parenthesized_expression "((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0)" ( (binary_expression "(*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0" (parenthesized_expression "(*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4)" ( (binary_expression "*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4" (pointer_expression "*(byte *)(*(int *)(pbVar6 + 0xc) + 1)" * (cast_expression "(byte *)(*(int *)(pbVar6 + 0xc) + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pbVar6 + 0xc) + 1)" ( (binary_expression "*(int *)(pbVar6 + 0xc) + 1" (pointer_expression "*(int *)(pbVar6 + 0xc)" * (cast_expression "(int *)(pbVar6 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar6 + 0xc)" ( (binary_expression "pbVar6 + 0xc" identifier + number_literal) )))) + number_literal) )))) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00041ff8;" goto statement_identifier ;)) (labeled_statement "LAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);" statement_identifier : (expression_statement "pbVar5 = *(byte **)(pbVar6 + 0xc);" (assignment_expression "pbVar5 = *(byte **)(pbVar6 + 0xc)" identifier = (pointer_expression "*(byte **)(pbVar6 + 0xc)" * (cast_expression "(byte **)(pbVar6 + 0xc)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 0xc)" ( (binary_expression "pbVar6 + 0xc" identifier + number_literal) ))))) ;)) (goto_statement "goto LAB_00041dd2;" goto statement_identifier ;) }))) }) (else_clause "else {\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }" else (compound_statement "{\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }" { (if_statement "if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }" if (parenthesized_expression "((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60))" ( (binary_expression "(pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)" (parenthesized_expression "(pbVar6 != (byte *)0x0)" ( (binary_expression "pbVar6 != (byte *)0x0" identifier != (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(pbVar6 != PTR_DAT_00077f60)" ( (binary_expression "pbVar6 != PTR_DAT_00077f60" identifier != identifier) ))) )) (compound_statement "{\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }" { (expression_statement "fwrite(" frag ",1,6,param_1);" (call_expression "fwrite(" frag ",1,6,param_1)" identifier (argument_list "(" frag ",1,6,param_1)" ( (string_literal "" frag "" " string_content ") , number_literal , number_literal , identifier ))) ;) (expression_statement "fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);" (call_expression "fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0)" identifier (argument_list "(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0)" ( identifier , (string_literal ""%016llx"" " string_content ") , (pointer_expression "*(undefined4 *)(param_2 + 0xc)" * (cast_expression "(undefined4 *)(param_2 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "bVar1 = *param_2;" (assignment_expression "bVar1 = *param_2" identifier = (pointer_expression "*param_2" * identifier)) ;) })) (if_statement "if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }" if (parenthesized_expression "((bVar1 & 4) != 0)" ( (binary_expression "(bVar1 & 4) != 0" (parenthesized_expression "(bVar1 & 4)" ( (binary_expression "bVar1 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      fwrite(" resolved",1,9,param_1);\n    }" { (expression_statement "fwrite(" resolved",1,9,param_1);" (call_expression "fwrite(" resolved",1,9,param_1)" identifier (argument_list "(" resolved",1,9,param_1)" ( (string_literal "" resolved"" " string_content ") , number_literal , number_literal , identifier ))) ;) })) (expression_statement "fwrite(" local",1,6,param_1);" (call_expression "fwrite(" local",1,6,param_1)" identifier (argument_list "(" local",1,6,param_1)" ( (string_literal "" local"" " string_content ") , number_literal , number_literal , identifier ))) ;) (expression_statement "pbVar6 = param_2;" (assignment_expression "pbVar6 = param_2" identifier = identifier) ;) (labeled_statement "LAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }" statement_identifier : (if_statement "if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }" if (parenthesized_expression "((*pbVar6 & 1) != 0)" ( (binary_expression "(*pbVar6 & 1) != 0" (parenthesized_expression "(*pbVar6 & 1)" ( (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }" { (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" identifier = (pointer_expression "*(undefined4 **)(pbVar6 + 4)" * (cast_expression "(undefined4 **)(pbVar6 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 4)" ( (binary_expression "pbVar6 + 4" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_00041ce2;" goto statement_identifier ;) }))) (labeled_statement "LAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;" statement_identifier : (if_statement "if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;" if (parenthesized_expression "((pbVar6[1] & 2) != 0)" ( (binary_expression "(pbVar6[1] & 2) != 0" (parenthesized_expression "(pbVar6[1] & 2)" ( (binary_expression "pbVar6[1] & 2" (subscript_expression "pbVar6[1]" identifier [ number_literal ]) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00041fc0;" goto statement_identifier ;))) (labeled_statement "LAB_00041dc6:\n    pbVar5 = pbVar6;" statement_identifier : (expression_statement "pbVar5 = pbVar6;" (assignment_expression "pbVar5 = pbVar6" identifier = identifier) ;)) (if_statement "if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }" if (parenthesized_expression "((pbVar6[1] & 4) != 0)" ( (binary_expression "(pbVar6[1] & 4) != 0" (parenthesized_expression "(pbVar6[1] & 4)" ( (binary_expression "pbVar6[1] & 4" (subscript_expression "pbVar6[1]" identifier [ number_literal ]) & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }" { (labeled_statement "LAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);" statement_identifier : (expression_statement "fwrite(" weakrefd",1,9,param_1);" (call_expression "fwrite(" weakrefd",1,9,param_1)" identifier (argument_list "(" weakrefd",1,9,param_1)" ( (string_literal "" weakrefd"" " string_content ") , number_literal , number_literal , identifier ))) ;)) (expression_statement "pbVar5 = pbVar6;" (assignment_expression "pbVar5 = pbVar6" identifier = identifier) ;) (if_statement "if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }" if (parenthesized_expression "((*pbVar6 & 1) != 0)" ( (binary_expression "(*pbVar6 & 1) != 0" (parenthesized_expression "(*pbVar6 & 1)" ( (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }" { (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" identifier = (pointer_expression "*(undefined4 **)(pbVar6 + 4)" * (cast_expression "(undefined4 **)(pbVar6 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 4)" ( (binary_expression "pbVar6 + 4" identifier + number_literal) ))))) ;) (if_statement "if (DAT_00081410 == puVar3) goto LAB_00042102;" if (parenthesized_expression "(DAT_00081410 == puVar3)" ( (binary_expression "DAT_00081410 == puVar3" identifier == identifier) )) (goto_statement "goto LAB_00042102;" goto statement_identifier ;)) (goto_statement "goto LAB_00041dd8;" goto statement_identifier ;) })) })) (labeled_statement "LAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);" statement_identifier : (expression_statement "puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);" (assignment_expression "puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" identifier = (pointer_expression "*(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" * (cast_expression "(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(pbVar5 + 4) + 0x14)" ( (binary_expression "*(int *)(pbVar5 + 4) + 0x14" (pointer_expression "*(int *)(pbVar5 + 4)" * (cast_expression "(int *)(pbVar5 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar5 + 4)" ( (binary_expression "pbVar5 + 4" identifier + number_literal) )))) + number_literal) ))))) ;)) }))) (labeled_statement "LAB_00041dd8:\n  fprintf(param_1," %s",*puVar3);" statement_identifier : (expression_statement "fprintf(param_1," %s",*puVar3);" (call_expression "fprintf(param_1," %s",*puVar3)" identifier (argument_list "(param_1," %s",*puVar3)" ( identifier , (string_literal "" %s"" " string_content ") , (pointer_expression "*puVar3" * identifier) ))) ;)) (expression_statement "bVar1 = *pbVar6;" (assignment_expression "bVar1 = *pbVar6" identifier = (pointer_expression "*pbVar6" * identifier)) ;) (if_statement "if ((bVar1 & 1) == 0) {\n    pbVar5 = pbVar6;\n    if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n    iVar2 = *(int *)(pbVar6 + 4);\nLAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);\n  }\n  else {\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }" if (parenthesized_expression "((bVar1 & 1) == 0)" ( (binary_expression "(bVar1 & 1) == 0" (parenthesized_expression "(bVar1 & 1)" ( (binary_expression "bVar1 & 1" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    pbVar5 = pbVar6;\n    if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n    iVar2 = *(int *)(pbVar6 + 4);\nLAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);\n  }" { (expression_statement "pbVar5 = pbVar6;" (assignment_expression "pbVar5 = pbVar6" identifier = identifier) ;) (if_statement "if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }" if (parenthesized_expression "((bVar1 & 4) != 0)" ( (binary_expression "(bVar1 & 4) != 0" (parenthesized_expression "(bVar1 & 4)" ( (binary_expression "bVar1 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }" { (labeled_statement "LAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);" statement_identifier : (expression_statement "puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);" (assignment_expression "puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" identifier = (pointer_expression "*(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" * (cast_expression "(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(pbVar5 + 4) + 0x14)" ( (binary_expression "*(int *)(pbVar5 + 4) + 0x14" (pointer_expression "*(int *)(pbVar5 + 4)" * (cast_expression "(int *)(pbVar5 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar5 + 4)" ( (binary_expression "pbVar5 + 4" identifier + number_literal) )))) + number_literal) ))))) ;)) (labeled_statement "LAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }" statement_identifier : (if_statement "if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }" if (parenthesized_expression "((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3))" ( (binary_expression "(puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)" (parenthesized_expression "(puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0))" ( (binary_expression "puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" identifier != (cast_expression "(undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" identifier + number_literal) )))) )) && (parenthesized_expression "(DAT_00081360 != puVar3)" ( (binary_expression "DAT_00081360 != puVar3" identifier != identifier) ))) )) (compound_statement "{\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }" { (expression_statement "uVar4 = FUN_0003f930();" (assignment_expression "uVar4 = FUN_0003f930()" identifier = (call_expression "FUN_0003f930()" identifier (argument_list "()" ( )))) ;) (expression_statement "fprintf(param_1," %lx",uVar4);" (call_expression "fprintf(param_1," %lx",uVar4)" identifier (argument_list "(param_1," %lx",uVar4)" ( identifier , (string_literal "" %lx"" " string_content ") , identifier ))) ;) }))) (goto_statement "goto LAB_00041e47;" goto statement_identifier ;) })) (if_statement "if (7 < DAT_0008164c) goto LAB_00041e47;" if (parenthesized_expression "(7 < DAT_0008164c)" ( (binary_expression "7 < DAT_0008164c" number_literal < identifier) )) (goto_statement "goto LAB_00041e47;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(pbVar6 + 4);" (assignment_expression "iVar2 = *(int *)(pbVar6 + 4)" identifier = (pointer_expression "*(int *)(pbVar6 + 4)" * (cast_expression "(int *)(pbVar6 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar6 + 4)" ( (binary_expression "pbVar6 + 4" identifier + number_literal) ))))) ;) (labeled_statement "LAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);" statement_identifier : (expression_statement "puVar3 = *(undefined4 **)(iVar2 + 0x14);" (assignment_expression "puVar3 = *(undefined4 **)(iVar2 + 0x14)" identifier = (pointer_expression "*(undefined4 **)(iVar2 + 0x14)" * (cast_expression "(undefined4 **)(iVar2 + 0x14)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) ))))) ;)) }) (else_clause "else {\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }" else (compound_statement "{\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }" { (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" identifier = (pointer_expression "*(undefined4 **)(pbVar6 + 4)" * (cast_expression "(undefined4 **)(pbVar6 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 4)" ( (binary_expression "pbVar6 + 4" identifier + number_literal) ))))) ;) (if_statement "if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }" if (parenthesized_expression "(puVar3 == DAT_00081410)" ( (binary_expression "puVar3 == DAT_00081410" identifier == identifier) )) (compound_statement "{\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }" { (expression_statement "pbVar5 = *(byte **)(pbVar6 + 0xc);" (assignment_expression "pbVar5 = *(byte **)(pbVar6 + 0xc)" identifier = (pointer_expression "*(byte **)(pbVar6 + 0xc)" * (cast_expression "(byte **)(pbVar6 + 0xc)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 0xc)" ( (binary_expression "pbVar6 + 0xc" identifier + number_literal) ))))) ;) (if_statement "if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;" if (parenthesized_expression "((*pbVar5 & 4) != 0)" ( (binary_expression "(*pbVar5 & 4) != 0" (parenthesized_expression "(*pbVar5 & 4)" ( (binary_expression "*pbVar5 & 4" (pointer_expression "*pbVar5" * identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00041ea6;" goto statement_identifier ;)) (if_statement "if (7 < DAT_0008164c) goto LAB_00041e47;" if (parenthesized_expression "(7 < DAT_0008164c)" ( (binary_expression "7 < DAT_0008164c" number_literal < identifier) )) (goto_statement "goto LAB_00041e47;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(pbVar5 + 4);" (assignment_expression "iVar2 = *(int *)(pbVar5 + 4)" identifier = (pointer_expression "*(int *)(pbVar5 + 4)" * (cast_expression "(int *)(pbVar5 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar5 + 4)" ( (binary_expression "pbVar5 + 4" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_00041ec8;" goto statement_identifier ;) })) (if_statement "if ((bVar1 & 4) != 0) goto LAB_00041e13;" if (parenthesized_expression "((bVar1 & 4) != 0)" ( (binary_expression "(bVar1 & 4) != 0" (parenthesized_expression "(bVar1 & 4)" ( (binary_expression "bVar1 & 4" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00041e13;" goto statement_identifier ;)) (if_statement "if (7 < DAT_0008164c) goto LAB_00041e47;" if (parenthesized_expression "(7 < DAT_0008164c)" ( (binary_expression "7 < DAT_0008164c" number_literal < identifier) )) (goto_statement "goto LAB_00041e47;" goto statement_identifier ;)) }))) (if_statement "if (puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;" if (parenthesized_expression "(puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0))" ( (binary_expression "puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" identifier == (cast_expression "(undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" identifier + number_literal) )))) )) (goto_statement "goto LAB_00041e47;" goto statement_identifier ;)) (expression_statement "DAT_0008164c = DAT_0008164c + 1;" (assignment_expression "DAT_0008164c = DAT_0008164c + 1" identifier = (binary_expression "DAT_0008164c + 1" identifier + number_literal)) ;) (expression_statement "puVar8 = &DAT_00057aaa;" (assignment_expression "puVar8 = &DAT_00057aaa" identifier = (pointer_expression "&DAT_00057aaa" & identifier)) ;) (expression_statement "fprintf(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa);" (call_expression "fprintf(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa)" identifier (argument_list "(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa)" ( identifier , (string_literal ""\n%*s<"" " escape_sequence string_content ") , (binary_expression "DAT_0008164c * 4" identifier * number_literal) , (pointer_expression "&DAT_00057aaa" & identifier) ))) ;) (if_statement "if ((*pbVar6 & 1) == 0) {\nLAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);\n  }\n  else {\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }" if (parenthesized_expression "((*pbVar6 & 1) == 0)" ( (binary_expression "(*pbVar6 & 1) == 0" (parenthesized_expression "(*pbVar6 & 1)" ( (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" * identifier) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);\n  }" { (labeled_statement "LAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);" statement_identifier : (expression_statement "FUN_00041730(param_1,pbVar6 + 8);" (call_expression "FUN_00041730(param_1,pbVar6 + 8)" identifier (argument_list "(param_1,pbVar6 + 8)" ( identifier , (binary_expression "pbVar6 + 8" identifier + number_literal) ))) ;)) }) (else_clause "else {\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }" else (compound_statement "{\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }" { (if_statement "if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }" if (parenthesized_expression "(*(undefined4 **)(pbVar6 + 4) == DAT_00081410)" ( (binary_expression "*(undefined4 **)(pbVar6 + 4) == DAT_00081410" (pointer_expression "*(undefined4 **)(pbVar6 + 4)" * (cast_expression "(undefined4 **)(pbVar6 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 4)" ( (binary_expression "pbVar6 + 4" identifier + number_literal) )))) == identifier) )) (compound_statement "{\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }" { (expression_statement "pbVar6 = *(byte **)(pbVar6 + 0xc);" (assignment_expression "pbVar6 = *(byte **)(pbVar6 + 0xc)" identifier = (pointer_expression "*(byte **)(pbVar6 + 0xc)" * (cast_expression "(byte **)(pbVar6 + 0xc)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 0xc)" ( (binary_expression "pbVar6 + 0xc" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000421c3;" goto statement_identifier ;) })) (expression_statement "fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);" (call_expression "fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8)" identifier (argument_list "(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8)" ( identifier , (string_literal ""constant %lx"" " string_content ") , (pointer_expression "*(undefined4 *)(pbVar6 + 0x10)" * (cast_expression "(undefined4 *)(pbVar6 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar6 + 0x10)" ( (binary_expression "pbVar6 + 0x10" identifier + number_literal) )))) , identifier ))) ;) }))) (expression_statement "fputc(0x3e,param_1);" (call_expression "fputc(0x3e,param_1)" identifier (argument_list "(0x3e,param_1)" ( number_literal , identifier ))) ;) (expression_statement "DAT_0008164c = DAT_0008164c + -1;" (assignment_expression "DAT_0008164c = DAT_0008164c + -1" identifier = (binary_expression "DAT_0008164c + -1" identifier + number_literal)) ;) (labeled_statement "LAB_00041e47:\n  fflush(param_1);" statement_identifier : (expression_statement "fflush(param_1);" (call_expression "fflush(param_1)" identifier (argument_list "(param_1)" ( identifier ))) ;)) (return_statement "return;" return ;) })))
(translation_unit "/* WARNING: Function: __x86.get_pc_thunk.bx replaced with injection: get_pc_thunk_bx */\n\nvoid print_symbol_value_1(FILE *file,symbolS *sym)\n\n{\n  symbol_flags sVar1;\n  byte bVar2;\n  int iVar3;\n  segT paVar4;\n  symbolS *psVar5;\n  asymbol *paVar6;\n  symbolS *psVar7;\n  valueT vVar8;\n  undefined *puVar9;\n  \n  paVar4 = (segT)sym->bsym;\n  if (((uint)sym->sy_flags & 1) == 0) {\nLAB_00041c16:\n    psVar7 = (symbolS *)paVar4->id;\n    if (psVar7 == (symbolS *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*(char *)&psVar7->sy_flags == '\0') {\n      psVar7 = (symbolS *)"(unnamed)";\n    }\n  }\n  else {\n    if (reg_section == paVar4) {\n      paVar4 = (segT)((sym->sy_value).X_op_symbol)->bsym;\n      goto LAB_00041c16;\n    }\n    psVar7 = (sym->sy_value).X_add_symbol;\n    if (psVar7 != (symbolS *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    psVar7 = (symbolS *)"(unnamed)";\n  }\n  fwrite(&DAT_0005bbc8,1,4,(FILE *)file);\n  fprintf((FILE *)file,"%016llx",sym,0);\n  fprintf((FILE *)file," %s",psVar7);\n  bVar2 = *(byte *)&sym->sy_flags;\n  psVar7 = sym;\n  if (((bVar2 & 1) == 0) || (psVar7 = (sym->sy_value).X_op_symbol, (segT)sym->bsym == reg_section))\n  {\n    if (psVar7->sy_frag != &zero_address_frag) {\n      fwrite(" frag ",1,6,(FILE *)file);\n      fprintf((FILE *)file,"%016llx",psVar7->sy_frag,0);\n    }\n    bVar2 = *(byte *)&psVar7->sy_flags;\n    if ((bVar2 & 2) != 0) {\n      fwrite(" written",1,8,(FILE *)file);\n      bVar2 = *(byte *)&psVar7->sy_flags;\n    }\n    if ((bVar2 & 4) == 0) {\n      if ((bVar2 & 8) != 0) {\n        fwrite(" resolving",1,10,(FILE *)file);\n        bVar2 = *(byte *)&psVar7->sy_flags;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,(FILE *)file);\n      bVar2 = *(byte *)&psVar7->sy_flags;\n    }\n    if ((bVar2 & 0x10) == 0) {\n      if ((bVar2 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,(FILE *)file);\n      iVar3 = S_IS_LOCAL(psVar7);\n      if (iVar3 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar3 = S_IS_EXTERNAL(psVar7);\n      if (iVar3 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,(FILE *)file);\n      iVar3 = S_IS_WEAK(psVar7);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,(FILE *)file);\n      if (((uint)psVar7->sy_flags & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar3 = S_IS_LOCAL(psVar7);\n      if (iVar3 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,(FILE *)file);\n      iVar3 = S_IS_EXTERNAL(psVar7);\n      if (iVar3 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar3 = S_IS_WEAK(psVar7);\n    }\n    if (iVar3 != 0) {\n      fwrite(&DAT_0005bc16,1,5,(FILE *)file);\n    }\n    paVar4 = (segT)psVar7->bsym;\n    if (((uint)psVar7->sy_flags & 1) == 0) {\n      if (((uint)paVar4->prev & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,(FILE *)file);\n        paVar4 = (segT)psVar7->bsym;\n        if (((uint)psVar7->sy_flags & 1) != 0) {\n          if (paVar4 == reg_section) {\n            psVar5 = (psVar7->sy_value).X_op_symbol;\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)paVar4->flags != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (reg_section == paVar4) {\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      if ((psVar5->bsym->flags & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (psVar5->bsym->section == (bfd_section *)(PTR__bfd_std_section_00077fa0 + 0xc0))\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,(FILE *)file);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (reg_section == paVar4) {\n      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,(FILE *)file);\n        if (((uint)psVar7->sy_flags & 1) == 0) goto LAB_00041dc6;\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section != paVar4) goto LAB_00041dd8;\n      }\n      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      goto LAB_00041dd2;\n    }\n  }\n  else {\n    if ((psVar7 != (symbolS *)0x0) && (psVar7 != (symbolS *)PTR_zero_address_frag_00077f60)) {\n      fwrite(" frag ",1,6,(FILE *)file);\n      fprintf((FILE *)file,"%016llx",(sym->sy_value).X_op_symbol,0);\n      bVar2 = *(byte *)&sym->sy_flags;\n    }\n    if ((bVar2 & 4) != 0) {\n      fwrite(" resolved",1,9,(FILE *)file);\n    }\n    fwrite(" local",1,6,(FILE *)file);\n    psVar7 = sym;\nLAB_00041cce:\n    if (((uint)psVar7->sy_flags & 1) != 0) {\n      paVar4 = (segT)psVar7->bsym;\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if (((psVar7->sy_flags).field_0x1 & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    psVar5 = psVar7;\n    if (((psVar7->sy_flags).field_0x1 & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,(FILE *)file);\n      psVar5 = psVar7;\n      if (((uint)psVar7->sy_flags & 1) != 0) {\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section == paVar4) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    paVar4 = psVar5->bsym->section;\n  }\nLAB_00041dd8:\n  fprintf((FILE *)file," %s",paVar4->name);\n  sVar1 = psVar7->sy_flags;\n  if (((uint)sVar1 & 1) == 0) {\n    psVar5 = psVar7;\n    if (((uint)sVar1 & 4) != 0) {\nLAB_00041ea6:\n      paVar4 = psVar5->bsym->section;\nLAB_00041e13:\n      if ((paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) && (expr_section != paVar4)) {\n        vVar8 = S_GET_VALUE(psVar7);\n        fprintf((FILE *)file," %lx",(int)vVar8);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < indent_level) goto LAB_00041e47;\n    paVar6 = psVar7->bsym;\nLAB_00041ec8:\n    paVar4 = paVar6->section;\n  }\n  else {\n    paVar4 = (segT)psVar7->bsym;\n    if (paVar4 == reg_section) {\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      if (((uint)psVar5->sy_flags & 4) != 0) goto LAB_00041ea6;\n      if (7 < indent_level) goto LAB_00041e47;\n      paVar6 = psVar5->bsym;\n      goto LAB_00041ec8;\n    }\n    if (((uint)sVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < indent_level) goto LAB_00041e47;\n  }\n  if (paVar4 == (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;\n  indent_level = indent_level + 1;\n  puVar9 = &DAT_00057aaa;\n  fprintf((FILE *)file,"\n%*s<",indent_level * 4,&DAT_00057aaa);\n  if (((uint)psVar7->sy_flags & 1) == 0) {\nLAB_000421c3:\n    print_expr_1(file,&psVar7->sy_value);\n  }\n  else {\n    if ((segT)psVar7->bsym == reg_section) {\n      psVar7 = (psVar7->sy_value).X_op_symbol;\n      goto LAB_000421c3;\n    }\n    fprintf((FILE *)file,"constant %lx",(int)(psVar7->sy_value).X_add_number,puVar9);\n  }\n  fputc(0x3e,(FILE *)file);\n  indent_level = indent_level + -1;\nLAB_00041e47:\n  fflush((FILE *)file);\n  return;\n}\n\n" comment (function_definition "void print_symbol_value_1(FILE *file,symbolS *sym)\n\n{\n  symbol_flags sVar1;\n  byte bVar2;\n  int iVar3;\n  segT paVar4;\n  symbolS *psVar5;\n  asymbol *paVar6;\n  symbolS *psVar7;\n  valueT vVar8;\n  undefined *puVar9;\n  \n  paVar4 = (segT)sym->bsym;\n  if (((uint)sym->sy_flags & 1) == 0) {\nLAB_00041c16:\n    psVar7 = (symbolS *)paVar4->id;\n    if (psVar7 == (symbolS *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*(char *)&psVar7->sy_flags == '\0') {\n      psVar7 = (symbolS *)"(unnamed)";\n    }\n  }\n  else {\n    if (reg_section == paVar4) {\n      paVar4 = (segT)((sym->sy_value).X_op_symbol)->bsym;\n      goto LAB_00041c16;\n    }\n    psVar7 = (sym->sy_value).X_add_symbol;\n    if (psVar7 != (symbolS *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    psVar7 = (symbolS *)"(unnamed)";\n  }\n  fwrite(&DAT_0005bbc8,1,4,(FILE *)file);\n  fprintf((FILE *)file,"%016llx",sym,0);\n  fprintf((FILE *)file," %s",psVar7);\n  bVar2 = *(byte *)&sym->sy_flags;\n  psVar7 = sym;\n  if (((bVar2 & 1) == 0) || (psVar7 = (sym->sy_value).X_op_symbol, (segT)sym->bsym == reg_section))\n  {\n    if (psVar7->sy_frag != &zero_address_frag) {\n      fwrite(" frag ",1,6,(FILE *)file);\n      fprintf((FILE *)file,"%016llx",psVar7->sy_frag,0);\n    }\n    bVar2 = *(byte *)&psVar7->sy_flags;\n    if ((bVar2 & 2) != 0) {\n      fwrite(" written",1,8,(FILE *)file);\n      bVar2 = *(byte *)&psVar7->sy_flags;\n    }\n    if ((bVar2 & 4) == 0) {\n      if ((bVar2 & 8) != 0) {\n        fwrite(" resolving",1,10,(FILE *)file);\n        bVar2 = *(byte *)&psVar7->sy_flags;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,(FILE *)file);\n      bVar2 = *(byte *)&psVar7->sy_flags;\n    }\n    if ((bVar2 & 0x10) == 0) {\n      if ((bVar2 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,(FILE *)file);\n      iVar3 = S_IS_LOCAL(psVar7);\n      if (iVar3 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar3 = S_IS_EXTERNAL(psVar7);\n      if (iVar3 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,(FILE *)file);\n      iVar3 = S_IS_WEAK(psVar7);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,(FILE *)file);\n      if (((uint)psVar7->sy_flags & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar3 = S_IS_LOCAL(psVar7);\n      if (iVar3 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,(FILE *)file);\n      iVar3 = S_IS_EXTERNAL(psVar7);\n      if (iVar3 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar3 = S_IS_WEAK(psVar7);\n    }\n    if (iVar3 != 0) {\n      fwrite(&DAT_0005bc16,1,5,(FILE *)file);\n    }\n    paVar4 = (segT)psVar7->bsym;\n    if (((uint)psVar7->sy_flags & 1) == 0) {\n      if (((uint)paVar4->prev & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,(FILE *)file);\n        paVar4 = (segT)psVar7->bsym;\n        if (((uint)psVar7->sy_flags & 1) != 0) {\n          if (paVar4 == reg_section) {\n            psVar5 = (psVar7->sy_value).X_op_symbol;\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)paVar4->flags != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (reg_section == paVar4) {\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      if ((psVar5->bsym->flags & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (psVar5->bsym->section == (bfd_section *)(PTR__bfd_std_section_00077fa0 + 0xc0))\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,(FILE *)file);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (reg_section == paVar4) {\n      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,(FILE *)file);\n        if (((uint)psVar7->sy_flags & 1) == 0) goto LAB_00041dc6;\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section != paVar4) goto LAB_00041dd8;\n      }\n      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      goto LAB_00041dd2;\n    }\n  }\n  else {\n    if ((psVar7 != (symbolS *)0x0) && (psVar7 != (symbolS *)PTR_zero_address_frag_00077f60)) {\n      fwrite(" frag ",1,6,(FILE *)file);\n      fprintf((FILE *)file,"%016llx",(sym->sy_value).X_op_symbol,0);\n      bVar2 = *(byte *)&sym->sy_flags;\n    }\n    if ((bVar2 & 4) != 0) {\n      fwrite(" resolved",1,9,(FILE *)file);\n    }\n    fwrite(" local",1,6,(FILE *)file);\n    psVar7 = sym;\nLAB_00041cce:\n    if (((uint)psVar7->sy_flags & 1) != 0) {\n      paVar4 = (segT)psVar7->bsym;\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if (((psVar7->sy_flags).field_0x1 & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    psVar5 = psVar7;\n    if (((psVar7->sy_flags).field_0x1 & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,(FILE *)file);\n      psVar5 = psVar7;\n      if (((uint)psVar7->sy_flags & 1) != 0) {\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section == paVar4) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    paVar4 = psVar5->bsym->section;\n  }\nLAB_00041dd8:\n  fprintf((FILE *)file," %s",paVar4->name);\n  sVar1 = psVar7->sy_flags;\n  if (((uint)sVar1 & 1) == 0) {\n    psVar5 = psVar7;\n    if (((uint)sVar1 & 4) != 0) {\nLAB_00041ea6:\n      paVar4 = psVar5->bsym->section;\nLAB_00041e13:\n      if ((paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) && (expr_section != paVar4)) {\n        vVar8 = S_GET_VALUE(psVar7);\n        fprintf((FILE *)file," %lx",(int)vVar8);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < indent_level) goto LAB_00041e47;\n    paVar6 = psVar7->bsym;\nLAB_00041ec8:\n    paVar4 = paVar6->section;\n  }\n  else {\n    paVar4 = (segT)psVar7->bsym;\n    if (paVar4 == reg_section) {\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      if (((uint)psVar5->sy_flags & 4) != 0) goto LAB_00041ea6;\n      if (7 < indent_level) goto LAB_00041e47;\n      paVar6 = psVar5->bsym;\n      goto LAB_00041ec8;\n    }\n    if (((uint)sVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < indent_level) goto LAB_00041e47;\n  }\n  if (paVar4 == (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;\n  indent_level = indent_level + 1;\n  puVar9 = &DAT_00057aaa;\n  fprintf((FILE *)file,"\n%*s<",indent_level * 4,&DAT_00057aaa);\n  if (((uint)psVar7->sy_flags & 1) == 0) {\nLAB_000421c3:\n    print_expr_1(file,&psVar7->sy_value);\n  }\n  else {\n    if ((segT)psVar7->bsym == reg_section) {\n      psVar7 = (psVar7->sy_value).X_op_symbol;\n      goto LAB_000421c3;\n    }\n    fprintf((FILE *)file,"constant %lx",(int)(psVar7->sy_value).X_add_number,puVar9);\n  }\n  fputc(0x3e,(FILE *)file);\n  indent_level = indent_level + -1;\nLAB_00041e47:\n  fflush((FILE *)file);\n  return;\n}" primitive_type (function_declarator "print_symbol_value_1(FILE *file,symbolS *sym)" identifier (parameter_list "(FILE *file,symbolS *sym)" ( (parameter_declaration "FILE *file" type_identifier (pointer_declarator "*file" * identifier)) , (parameter_declaration "symbolS *sym" type_identifier (pointer_declarator "*sym" * identifier)) ))) (compound_statement "{\n  symbol_flags sVar1;\n  byte bVar2;\n  int iVar3;\n  segT paVar4;\n  symbolS *psVar5;\n  asymbol *paVar6;\n  symbolS *psVar7;\n  valueT vVar8;\n  undefined *puVar9;\n  \n  paVar4 = (segT)sym->bsym;\n  if (((uint)sym->sy_flags & 1) == 0) {\nLAB_00041c16:\n    psVar7 = (symbolS *)paVar4->id;\n    if (psVar7 == (symbolS *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*(char *)&psVar7->sy_flags == '\0') {\n      psVar7 = (symbolS *)"(unnamed)";\n    }\n  }\n  else {\n    if (reg_section == paVar4) {\n      paVar4 = (segT)((sym->sy_value).X_op_symbol)->bsym;\n      goto LAB_00041c16;\n    }\n    psVar7 = (sym->sy_value).X_add_symbol;\n    if (psVar7 != (symbolS *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    psVar7 = (symbolS *)"(unnamed)";\n  }\n  fwrite(&DAT_0005bbc8,1,4,(FILE *)file);\n  fprintf((FILE *)file,"%016llx",sym,0);\n  fprintf((FILE *)file," %s",psVar7);\n  bVar2 = *(byte *)&sym->sy_flags;\n  psVar7 = sym;\n  if (((bVar2 & 1) == 0) || (psVar7 = (sym->sy_value).X_op_symbol, (segT)sym->bsym == reg_section))\n  {\n    if (psVar7->sy_frag != &zero_address_frag) {\n      fwrite(" frag ",1,6,(FILE *)file);\n      fprintf((FILE *)file,"%016llx",psVar7->sy_frag,0);\n    }\n    bVar2 = *(byte *)&psVar7->sy_flags;\n    if ((bVar2 & 2) != 0) {\n      fwrite(" written",1,8,(FILE *)file);\n      bVar2 = *(byte *)&psVar7->sy_flags;\n    }\n    if ((bVar2 & 4) == 0) {\n      if ((bVar2 & 8) != 0) {\n        fwrite(" resolving",1,10,(FILE *)file);\n        bVar2 = *(byte *)&psVar7->sy_flags;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,(FILE *)file);\n      bVar2 = *(byte *)&psVar7->sy_flags;\n    }\n    if ((bVar2 & 0x10) == 0) {\n      if ((bVar2 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,(FILE *)file);\n      iVar3 = S_IS_LOCAL(psVar7);\n      if (iVar3 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar3 = S_IS_EXTERNAL(psVar7);\n      if (iVar3 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,(FILE *)file);\n      iVar3 = S_IS_WEAK(psVar7);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,(FILE *)file);\n      if (((uint)psVar7->sy_flags & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar3 = S_IS_LOCAL(psVar7);\n      if (iVar3 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,(FILE *)file);\n      iVar3 = S_IS_EXTERNAL(psVar7);\n      if (iVar3 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar3 = S_IS_WEAK(psVar7);\n    }\n    if (iVar3 != 0) {\n      fwrite(&DAT_0005bc16,1,5,(FILE *)file);\n    }\n    paVar4 = (segT)psVar7->bsym;\n    if (((uint)psVar7->sy_flags & 1) == 0) {\n      if (((uint)paVar4->prev & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,(FILE *)file);\n        paVar4 = (segT)psVar7->bsym;\n        if (((uint)psVar7->sy_flags & 1) != 0) {\n          if (paVar4 == reg_section) {\n            psVar5 = (psVar7->sy_value).X_op_symbol;\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)paVar4->flags != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (reg_section == paVar4) {\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      if ((psVar5->bsym->flags & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (psVar5->bsym->section == (bfd_section *)(PTR__bfd_std_section_00077fa0 + 0xc0))\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,(FILE *)file);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (reg_section == paVar4) {\n      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,(FILE *)file);\n        if (((uint)psVar7->sy_flags & 1) == 0) goto LAB_00041dc6;\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section != paVar4) goto LAB_00041dd8;\n      }\n      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      goto LAB_00041dd2;\n    }\n  }\n  else {\n    if ((psVar7 != (symbolS *)0x0) && (psVar7 != (symbolS *)PTR_zero_address_frag_00077f60)) {\n      fwrite(" frag ",1,6,(FILE *)file);\n      fprintf((FILE *)file,"%016llx",(sym->sy_value).X_op_symbol,0);\n      bVar2 = *(byte *)&sym->sy_flags;\n    }\n    if ((bVar2 & 4) != 0) {\n      fwrite(" resolved",1,9,(FILE *)file);\n    }\n    fwrite(" local",1,6,(FILE *)file);\n    psVar7 = sym;\nLAB_00041cce:\n    if (((uint)psVar7->sy_flags & 1) != 0) {\n      paVar4 = (segT)psVar7->bsym;\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if (((psVar7->sy_flags).field_0x1 & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    psVar5 = psVar7;\n    if (((psVar7->sy_flags).field_0x1 & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,(FILE *)file);\n      psVar5 = psVar7;\n      if (((uint)psVar7->sy_flags & 1) != 0) {\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section == paVar4) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    paVar4 = psVar5->bsym->section;\n  }\nLAB_00041dd8:\n  fprintf((FILE *)file," %s",paVar4->name);\n  sVar1 = psVar7->sy_flags;\n  if (((uint)sVar1 & 1) == 0) {\n    psVar5 = psVar7;\n    if (((uint)sVar1 & 4) != 0) {\nLAB_00041ea6:\n      paVar4 = psVar5->bsym->section;\nLAB_00041e13:\n      if ((paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) && (expr_section != paVar4)) {\n        vVar8 = S_GET_VALUE(psVar7);\n        fprintf((FILE *)file," %lx",(int)vVar8);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < indent_level) goto LAB_00041e47;\n    paVar6 = psVar7->bsym;\nLAB_00041ec8:\n    paVar4 = paVar6->section;\n  }\n  else {\n    paVar4 = (segT)psVar7->bsym;\n    if (paVar4 == reg_section) {\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      if (((uint)psVar5->sy_flags & 4) != 0) goto LAB_00041ea6;\n      if (7 < indent_level) goto LAB_00041e47;\n      paVar6 = psVar5->bsym;\n      goto LAB_00041ec8;\n    }\n    if (((uint)sVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < indent_level) goto LAB_00041e47;\n  }\n  if (paVar4 == (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;\n  indent_level = indent_level + 1;\n  puVar9 = &DAT_00057aaa;\n  fprintf((FILE *)file,"\n%*s<",indent_level * 4,&DAT_00057aaa);\n  if (((uint)psVar7->sy_flags & 1) == 0) {\nLAB_000421c3:\n    print_expr_1(file,&psVar7->sy_value);\n  }\n  else {\n    if ((segT)psVar7->bsym == reg_section) {\n      psVar7 = (psVar7->sy_value).X_op_symbol;\n      goto LAB_000421c3;\n    }\n    fprintf((FILE *)file,"constant %lx",(int)(psVar7->sy_value).X_add_number,puVar9);\n  }\n  fputc(0x3e,(FILE *)file);\n  indent_level = indent_level + -1;\nLAB_00041e47:\n  fflush((FILE *)file);\n  return;\n}" { (declaration "symbol_flags sVar1;" type_identifier identifier ;) (declaration "byte bVar2;" type_identifier identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "segT paVar4;" type_identifier identifier ;) (declaration "symbolS *psVar5;" type_identifier (pointer_declarator "*psVar5" * identifier) ;) (declaration "asymbol *paVar6;" type_identifier (pointer_declarator "*paVar6" * identifier) ;) (declaration "symbolS *psVar7;" type_identifier (pointer_declarator "*psVar7" * identifier) ;) (declaration "valueT vVar8;" type_identifier identifier ;) (declaration "undefined *puVar9;" type_identifier (pointer_declarator "*puVar9" * identifier) ;) (expression_statement "paVar4 = (segT)sym->bsym;" (assignment_expression "paVar4 = (segT)sym->bsym" identifier = (cast_expression "(segT)sym->bsym" ( (type_descriptor "segT" type_identifier) ) (field_expression "sym->bsym" identifier -> field_identifier))) ;) (if_statement "if (((uint)sym->sy_flags & 1) == 0) {\nLAB_00041c16:\n    psVar7 = (symbolS *)paVar4->id;\n    if (psVar7 == (symbolS *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*(char *)&psVar7->sy_flags == '\0') {\n      psVar7 = (symbolS *)"(unnamed)";\n    }\n  }\n  else {\n    if (reg_section == paVar4) {\n      paVar4 = (segT)((sym->sy_value).X_op_symbol)->bsym;\n      goto LAB_00041c16;\n    }\n    psVar7 = (sym->sy_value).X_add_symbol;\n    if (psVar7 != (symbolS *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    psVar7 = (symbolS *)"(unnamed)";\n  }" if (parenthesized_expression "(((uint)sym->sy_flags & 1) == 0)" ( (binary_expression "((uint)sym->sy_flags & 1) == 0" (parenthesized_expression "((uint)sym->sy_flags & 1)" ( (binary_expression "(uint)sym->sy_flags & 1" (cast_expression "(uint)sym->sy_flags" ( (type_descriptor "uint" type_identifier) ) (field_expression "sym->sy_flags" identifier -> field_identifier)) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_00041c16:\n    psVar7 = (symbolS *)paVar4->id;\n    if (psVar7 == (symbolS *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*(char *)&psVar7->sy_flags == '\0') {\n      psVar7 = (symbolS *)"(unnamed)";\n    }\n  }" { (labeled_statement "LAB_00041c16:\n    psVar7 = (symbolS *)paVar4->id;" statement_identifier : (expression_statement "psVar7 = (symbolS *)paVar4->id;" (assignment_expression "psVar7 = (symbolS *)paVar4->id" identifier = (cast_expression "(symbolS *)paVar4->id" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "paVar4->id" identifier -> field_identifier))) ;)) (if_statement "if (psVar7 == (symbolS *)0x0) goto LAB_00041c03;" if (parenthesized_expression "(psVar7 == (symbolS *)0x0)" ( (binary_expression "psVar7 == (symbolS *)0x0" identifier == (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00041c03;" goto statement_identifier ;)) (labeled_statement "LAB_00041c1d:\n    if (*(char *)&psVar7->sy_flags == '\0') {\n      psVar7 = (symbolS *)"(unnamed)";\n    }" statement_identifier : (if_statement "if (*(char *)&psVar7->sy_flags == '\0') {\n      psVar7 = (symbolS *)"(unnamed)";\n    }" if (parenthesized_expression "(*(char *)&psVar7->sy_flags == '\0')" ( (binary_expression "*(char *)&psVar7->sy_flags == '\0'" (pointer_expression "*(char *)&psVar7->sy_flags" * (cast_expression "(char *)&psVar7->sy_flags" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (pointer_expression "&psVar7->sy_flags" & (field_expression "psVar7->sy_flags" identifier -> field_identifier)))) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      psVar7 = (symbolS *)"(unnamed)";\n    }" { (expression_statement "psVar7 = (symbolS *)"(unnamed)";" (assignment_expression "psVar7 = (symbolS *)"(unnamed)"" identifier = (cast_expression "(symbolS *)"(unnamed)"" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""(unnamed)"" " string_content "))) ;) }))) }) (else_clause "else {\n    if (reg_section == paVar4) {\n      paVar4 = (segT)((sym->sy_value).X_op_symbol)->bsym;\n      goto LAB_00041c16;\n    }\n    psVar7 = (sym->sy_value).X_add_symbol;\n    if (psVar7 != (symbolS *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    psVar7 = (symbolS *)"(unnamed)";\n  }" else (compound_statement "{\n    if (reg_section == paVar4) {\n      paVar4 = (segT)((sym->sy_value).X_op_symbol)->bsym;\n      goto LAB_00041c16;\n    }\n    psVar7 = (sym->sy_value).X_add_symbol;\n    if (psVar7 != (symbolS *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    psVar7 = (symbolS *)"(unnamed)";\n  }" { (if_statement "if (reg_section == paVar4) {\n      paVar4 = (segT)((sym->sy_value).X_op_symbol)->bsym;\n      goto LAB_00041c16;\n    }" if (parenthesized_expression "(reg_section == paVar4)" ( (binary_expression "reg_section == paVar4" identifier == identifier) )) (compound_statement "{\n      paVar4 = (segT)((sym->sy_value).X_op_symbol)->bsym;\n      goto LAB_00041c16;\n    }" { (expression_statement "paVar4 = (segT)((sym->sy_value).X_op_symbol)->bsym;" (assignment_expression "paVar4 = (segT)((sym->sy_value).X_op_symbol)->bsym" identifier = (field_expression "(segT)((sym->sy_value).X_op_symbol)->bsym" (call_expression "(segT)((sym->sy_value).X_op_symbol)" (parenthesized_expression "(segT)" ( identifier )) (argument_list "((sym->sy_value).X_op_symbol)" ( (field_expression "(sym->sy_value).X_op_symbol" (parenthesized_expression "(sym->sy_value)" ( (field_expression "sym->sy_value" identifier -> field_identifier) )) . field_identifier) ))) -> field_identifier)) ;) (goto_statement "goto LAB_00041c16;" goto statement_identifier ;) })) (expression_statement "psVar7 = (sym->sy_value).X_add_symbol;" (assignment_expression "psVar7 = (sym->sy_value).X_add_symbol" identifier = (field_expression "(sym->sy_value).X_add_symbol" (parenthesized_expression "(sym->sy_value)" ( (field_expression "sym->sy_value" identifier -> field_identifier) )) . field_identifier)) ;) (if_statement "if (psVar7 != (symbolS *)0x0) goto LAB_00041c1d;" if (parenthesized_expression "(psVar7 != (symbolS *)0x0)" ( (binary_expression "psVar7 != (symbolS *)0x0" identifier != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00041c1d;" goto statement_identifier ;)) (labeled_statement "LAB_00041c03:\n    psVar7 = (symbolS *)"(unnamed)";" statement_identifier : (expression_statement "psVar7 = (symbolS *)"(unnamed)";" (assignment_expression "psVar7 = (symbolS *)"(unnamed)"" identifier = (cast_expression "(symbolS *)"(unnamed)"" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) (string_literal ""(unnamed)"" " string_content "))) ;)) }))) (expression_statement "fwrite(&DAT_0005bbc8,1,4,(FILE *)file);" (call_expression "fwrite(&DAT_0005bbc8,1,4,(FILE *)file)" identifier (argument_list "(&DAT_0005bbc8,1,4,(FILE *)file)" ( (pointer_expression "&DAT_0005bbc8" & identifier) , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "fprintf((FILE *)file,"%016llx",sym,0);" (call_expression "fprintf((FILE *)file,"%016llx",sym,0)" identifier (argument_list "((FILE *)file,"%016llx",sym,0)" ( (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""%016llx"" " string_content ") , identifier , number_literal ))) ;) (expression_statement "fprintf((FILE *)file," %s",psVar7);" (call_expression "fprintf((FILE *)file," %s",psVar7)" identifier (argument_list "((FILE *)file," %s",psVar7)" ( (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal "" %s"" " string_content ") , identifier ))) ;) (expression_statement "bVar2 = *(byte *)&sym->sy_flags;" (assignment_expression "bVar2 = *(byte *)&sym->sy_flags" identifier = (pointer_expression "*(byte *)&sym->sy_flags" * (cast_expression "(byte *)&sym->sy_flags" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&sym->sy_flags" & (field_expression "sym->sy_flags" identifier -> field_identifier))))) ;) (expression_statement "psVar7 = sym;" (assignment_expression "psVar7 = sym" identifier = identifier) ;) (if_statement "if (((bVar2 & 1) == 0) || (psVar7 = (sym->sy_value).X_op_symbol, (segT)sym->bsym == reg_section))\n  {\n    if (psVar7->sy_frag != &zero_address_frag) {\n      fwrite(" frag ",1,6,(FILE *)file);\n      fprintf((FILE *)file,"%016llx",psVar7->sy_frag,0);\n    }\n    bVar2 = *(byte *)&psVar7->sy_flags;\n    if ((bVar2 & 2) != 0) {\n      fwrite(" written",1,8,(FILE *)file);\n      bVar2 = *(byte *)&psVar7->sy_flags;\n    }\n    if ((bVar2 & 4) == 0) {\n      if ((bVar2 & 8) != 0) {\n        fwrite(" resolving",1,10,(FILE *)file);\n        bVar2 = *(byte *)&psVar7->sy_flags;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,(FILE *)file);\n      bVar2 = *(byte *)&psVar7->sy_flags;\n    }\n    if ((bVar2 & 0x10) == 0) {\n      if ((bVar2 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,(FILE *)file);\n      iVar3 = S_IS_LOCAL(psVar7);\n      if (iVar3 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar3 = S_IS_EXTERNAL(psVar7);\n      if (iVar3 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,(FILE *)file);\n      iVar3 = S_IS_WEAK(psVar7);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,(FILE *)file);\n      if (((uint)psVar7->sy_flags & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar3 = S_IS_LOCAL(psVar7);\n      if (iVar3 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,(FILE *)file);\n      iVar3 = S_IS_EXTERNAL(psVar7);\n      if (iVar3 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar3 = S_IS_WEAK(psVar7);\n    }\n    if (iVar3 != 0) {\n      fwrite(&DAT_0005bc16,1,5,(FILE *)file);\n    }\n    paVar4 = (segT)psVar7->bsym;\n    if (((uint)psVar7->sy_flags & 1) == 0) {\n      if (((uint)paVar4->prev & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,(FILE *)file);\n        paVar4 = (segT)psVar7->bsym;\n        if (((uint)psVar7->sy_flags & 1) != 0) {\n          if (paVar4 == reg_section) {\n            psVar5 = (psVar7->sy_value).X_op_symbol;\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)paVar4->flags != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (reg_section == paVar4) {\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      if ((psVar5->bsym->flags & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (psVar5->bsym->section == (bfd_section *)(PTR__bfd_std_section_00077fa0 + 0xc0))\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,(FILE *)file);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (reg_section == paVar4) {\n      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,(FILE *)file);\n        if (((uint)psVar7->sy_flags & 1) == 0) goto LAB_00041dc6;\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section != paVar4) goto LAB_00041dd8;\n      }\n      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      goto LAB_00041dd2;\n    }\n  }\n  else {\n    if ((psVar7 != (symbolS *)0x0) && (psVar7 != (symbolS *)PTR_zero_address_frag_00077f60)) {\n      fwrite(" frag ",1,6,(FILE *)file);\n      fprintf((FILE *)file,"%016llx",(sym->sy_value).X_op_symbol,0);\n      bVar2 = *(byte *)&sym->sy_flags;\n    }\n    if ((bVar2 & 4) != 0) {\n      fwrite(" resolved",1,9,(FILE *)file);\n    }\n    fwrite(" local",1,6,(FILE *)file);\n    psVar7 = sym;\nLAB_00041cce:\n    if (((uint)psVar7->sy_flags & 1) != 0) {\n      paVar4 = (segT)psVar7->bsym;\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if (((psVar7->sy_flags).field_0x1 & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    psVar5 = psVar7;\n    if (((psVar7->sy_flags).field_0x1 & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,(FILE *)file);\n      psVar5 = psVar7;\n      if (((uint)psVar7->sy_flags & 1) != 0) {\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section == paVar4) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    paVar4 = psVar5->bsym->section;\n  }" if (parenthesized_expression "(((bVar2 & 1) == 0) || (psVar7 = (sym->sy_value).X_op_symbol, (segT)sym->bsym == reg_section))" ( (binary_expression "((bVar2 & 1) == 0) || (psVar7 = (sym->sy_value).X_op_symbol, (segT)sym->bsym == reg_section)" (parenthesized_expression "((bVar2 & 1) == 0)" ( (binary_expression "(bVar2 & 1) == 0" (parenthesized_expression "(bVar2 & 1)" ( (binary_expression "bVar2 & 1" identifier & number_literal) )) == number_literal) )) || (parenthesized_expression "(psVar7 = (sym->sy_value).X_op_symbol, (segT)sym->bsym == reg_section)" ( (comma_expression "psVar7 = (sym->sy_value).X_op_symbol, (segT)sym->bsym == reg_section" (assignment_expression "psVar7 = (sym->sy_value).X_op_symbol" identifier = (field_expression "(sym->sy_value).X_op_symbol" (parenthesized_expression "(sym->sy_value)" ( (field_expression "sym->sy_value" identifier -> field_identifier) )) . field_identifier)) , (binary_expression "(segT)sym->bsym == reg_section" (cast_expression "(segT)sym->bsym" ( (type_descriptor "segT" type_identifier) ) (field_expression "sym->bsym" identifier -> field_identifier)) == identifier)) ))) )) (compound_statement "{\n    if (psVar7->sy_frag != &zero_address_frag) {\n      fwrite(" frag ",1,6,(FILE *)file);\n      fprintf((FILE *)file,"%016llx",psVar7->sy_frag,0);\n    }\n    bVar2 = *(byte *)&psVar7->sy_flags;\n    if ((bVar2 & 2) != 0) {\n      fwrite(" written",1,8,(FILE *)file);\n      bVar2 = *(byte *)&psVar7->sy_flags;\n    }\n    if ((bVar2 & 4) == 0) {\n      if ((bVar2 & 8) != 0) {\n        fwrite(" resolving",1,10,(FILE *)file);\n        bVar2 = *(byte *)&psVar7->sy_flags;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,(FILE *)file);\n      bVar2 = *(byte *)&psVar7->sy_flags;\n    }\n    if ((bVar2 & 0x10) == 0) {\n      if ((bVar2 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,(FILE *)file);\n      iVar3 = S_IS_LOCAL(psVar7);\n      if (iVar3 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar3 = S_IS_EXTERNAL(psVar7);\n      if (iVar3 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,(FILE *)file);\n      iVar3 = S_IS_WEAK(psVar7);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,(FILE *)file);\n      if (((uint)psVar7->sy_flags & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar3 = S_IS_LOCAL(psVar7);\n      if (iVar3 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,(FILE *)file);\n      iVar3 = S_IS_EXTERNAL(psVar7);\n      if (iVar3 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar3 = S_IS_WEAK(psVar7);\n    }\n    if (iVar3 != 0) {\n      fwrite(&DAT_0005bc16,1,5,(FILE *)file);\n    }\n    paVar4 = (segT)psVar7->bsym;\n    if (((uint)psVar7->sy_flags & 1) == 0) {\n      if (((uint)paVar4->prev & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,(FILE *)file);\n        paVar4 = (segT)psVar7->bsym;\n        if (((uint)psVar7->sy_flags & 1) != 0) {\n          if (paVar4 == reg_section) {\n            psVar5 = (psVar7->sy_value).X_op_symbol;\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)paVar4->flags != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (reg_section == paVar4) {\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      if ((psVar5->bsym->flags & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (psVar5->bsym->section == (bfd_section *)(PTR__bfd_std_section_00077fa0 + 0xc0))\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,(FILE *)file);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (reg_section == paVar4) {\n      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,(FILE *)file);\n        if (((uint)psVar7->sy_flags & 1) == 0) goto LAB_00041dc6;\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section != paVar4) goto LAB_00041dd8;\n      }\n      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      goto LAB_00041dd2;\n    }\n  }" { (if_statement "if (psVar7->sy_frag != &zero_address_frag) {\n      fwrite(" frag ",1,6,(FILE *)file);\n      fprintf((FILE *)file,"%016llx",psVar7->sy_frag,0);\n    }" if (parenthesized_expression "(psVar7->sy_frag != &zero_address_frag)" ( (binary_expression "psVar7->sy_frag != &zero_address_frag" (field_expression "psVar7->sy_frag" identifier -> field_identifier) != (pointer_expression "&zero_address_frag" & identifier)) )) (compound_statement "{\n      fwrite(" frag ",1,6,(FILE *)file);\n      fprintf((FILE *)file,"%016llx",psVar7->sy_frag,0);\n    }" { (expression_statement "fwrite(" frag ",1,6,(FILE *)file);" (call_expression "fwrite(" frag ",1,6,(FILE *)file)" identifier (argument_list "(" frag ",1,6,(FILE *)file)" ( (string_literal "" frag "" " string_content ") , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "fprintf((FILE *)file,"%016llx",psVar7->sy_frag,0);" (call_expression "fprintf((FILE *)file,"%016llx",psVar7->sy_frag,0)" identifier (argument_list "((FILE *)file,"%016llx",psVar7->sy_frag,0)" ( (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""%016llx"" " string_content ") , (field_expression "psVar7->sy_frag" identifier -> field_identifier) , number_literal ))) ;) })) (expression_statement "bVar2 = *(byte *)&psVar7->sy_flags;" (assignment_expression "bVar2 = *(byte *)&psVar7->sy_flags" identifier = (pointer_expression "*(byte *)&psVar7->sy_flags" * (cast_expression "(byte *)&psVar7->sy_flags" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&psVar7->sy_flags" & (field_expression "psVar7->sy_flags" identifier -> field_identifier))))) ;) (if_statement "if ((bVar2 & 2) != 0) {\n      fwrite(" written",1,8,(FILE *)file);\n      bVar2 = *(byte *)&psVar7->sy_flags;\n    }" if (parenthesized_expression "((bVar2 & 2) != 0)" ( (binary_expression "(bVar2 & 2) != 0" (parenthesized_expression "(bVar2 & 2)" ( (binary_expression "bVar2 & 2" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      fwrite(" written",1,8,(FILE *)file);\n      bVar2 = *(byte *)&psVar7->sy_flags;\n    }" { (expression_statement "fwrite(" written",1,8,(FILE *)file);" (call_expression "fwrite(" written",1,8,(FILE *)file)" identifier (argument_list "(" written",1,8,(FILE *)file)" ( (string_literal "" written"" " string_content ") , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "bVar2 = *(byte *)&psVar7->sy_flags;" (assignment_expression "bVar2 = *(byte *)&psVar7->sy_flags" identifier = (pointer_expression "*(byte *)&psVar7->sy_flags" * (cast_expression "(byte *)&psVar7->sy_flags" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&psVar7->sy_flags" & (field_expression "psVar7->sy_flags" identifier -> field_identifier))))) ;) })) (if_statement "if ((bVar2 & 4) == 0) {\n      if ((bVar2 & 8) != 0) {\n        fwrite(" resolving",1,10,(FILE *)file);\n        bVar2 = *(byte *)&psVar7->sy_flags;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,(FILE *)file);\n      bVar2 = *(byte *)&psVar7->sy_flags;\n    }" if (parenthesized_expression "((bVar2 & 4) == 0)" ( (binary_expression "(bVar2 & 4) == 0" (parenthesized_expression "(bVar2 & 4)" ( (binary_expression "bVar2 & 4" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      if ((bVar2 & 8) != 0) {\n        fwrite(" resolving",1,10,(FILE *)file);\n        bVar2 = *(byte *)&psVar7->sy_flags;\n      }\n    }" { (if_statement "if ((bVar2 & 8) != 0) {\n        fwrite(" resolving",1,10,(FILE *)file);\n        bVar2 = *(byte *)&psVar7->sy_flags;\n      }" if (parenthesized_expression "((bVar2 & 8) != 0)" ( (binary_expression "(bVar2 & 8) != 0" (parenthesized_expression "(bVar2 & 8)" ( (binary_expression "bVar2 & 8" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n        fwrite(" resolving",1,10,(FILE *)file);\n        bVar2 = *(byte *)&psVar7->sy_flags;\n      }" { (expression_statement "fwrite(" resolving",1,10,(FILE *)file);" (call_expression "fwrite(" resolving",1,10,(FILE *)file)" identifier (argument_list "(" resolving",1,10,(FILE *)file)" ( (string_literal "" resolving"" " string_content ") , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "bVar2 = *(byte *)&psVar7->sy_flags;" (assignment_expression "bVar2 = *(byte *)&psVar7->sy_flags" identifier = (pointer_expression "*(byte *)&psVar7->sy_flags" * (cast_expression "(byte *)&psVar7->sy_flags" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&psVar7->sy_flags" & (field_expression "psVar7->sy_flags" identifier -> field_identifier))))) ;) })) }) (else_clause "else {\n      fwrite(" resolved",1,9,(FILE *)file);\n      bVar2 = *(byte *)&psVar7->sy_flags;\n    }" else (compound_statement "{\n      fwrite(" resolved",1,9,(FILE *)file);\n      bVar2 = *(byte *)&psVar7->sy_flags;\n    }" { (expression_statement "fwrite(" resolved",1,9,(FILE *)file);" (call_expression "fwrite(" resolved",1,9,(FILE *)file)" identifier (argument_list "(" resolved",1,9,(FILE *)file)" ( (string_literal "" resolved"" " string_content ") , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "bVar2 = *(byte *)&psVar7->sy_flags;" (assignment_expression "bVar2 = *(byte *)&psVar7->sy_flags" identifier = (pointer_expression "*(byte *)&psVar7->sy_flags" * (cast_expression "(byte *)&psVar7->sy_flags" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&psVar7->sy_flags" & (field_expression "psVar7->sy_flags" identifier -> field_identifier))))) ;) }))) (if_statement "if ((bVar2 & 0x10) == 0) {\n      if ((bVar2 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,(FILE *)file);\n      iVar3 = S_IS_LOCAL(psVar7);\n      if (iVar3 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar3 = S_IS_EXTERNAL(psVar7);\n      if (iVar3 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,(FILE *)file);\n      iVar3 = S_IS_WEAK(psVar7);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,(FILE *)file);\n      if (((uint)psVar7->sy_flags & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar3 = S_IS_LOCAL(psVar7);\n      if (iVar3 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,(FILE *)file);\n      iVar3 = S_IS_EXTERNAL(psVar7);\n      if (iVar3 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar3 = S_IS_WEAK(psVar7);\n    }" if (parenthesized_expression "((bVar2 & 0x10) == 0)" ( (binary_expression "(bVar2 & 0x10) == 0" (parenthesized_expression "(bVar2 & 0x10)" ( (binary_expression "bVar2 & 0x10" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      if ((bVar2 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,(FILE *)file);\n      iVar3 = S_IS_LOCAL(psVar7);\n      if (iVar3 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar3 = S_IS_EXTERNAL(psVar7);\n      if (iVar3 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,(FILE *)file);\n      iVar3 = S_IS_WEAK(psVar7);\n    }" { (if_statement "if ((bVar2 & 0x20) == 0) goto LAB_00041d55;" if (parenthesized_expression "((bVar2 & 0x20) == 0)" ( (binary_expression "(bVar2 & 0x20) == 0" (parenthesized_expression "(bVar2 & 0x20)" ( (binary_expression "bVar2 & 0x20" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00041d55;" goto statement_identifier ;)) (labeled_statement "LAB_00041eef:\n      fwrite(" used",1,5,(FILE *)file);" statement_identifier : (expression_statement "fwrite(" used",1,5,(FILE *)file);" (call_expression "fwrite(" used",1,5,(FILE *)file)" identifier (argument_list "(" used",1,5,(FILE *)file)" ( (string_literal "" used"" " string_content ") , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;)) (expression_statement "iVar3 = S_IS_LOCAL(psVar7);" (assignment_expression "iVar3 = S_IS_LOCAL(psVar7)" identifier = (call_expression "S_IS_LOCAL(psVar7)" identifier (argument_list "(psVar7)" ( identifier )))) ;) (if_statement "if (iVar3 != 0) goto LAB_00041f17;" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00041f17;" goto statement_identifier ;)) (labeled_statement "LAB_00041d69:\n      iVar3 = S_IS_EXTERNAL(psVar7);" statement_identifier : (expression_statement "iVar3 = S_IS_EXTERNAL(psVar7);" (assignment_expression "iVar3 = S_IS_EXTERNAL(psVar7)" identifier = (call_expression "S_IS_EXTERNAL(psVar7)" identifier (argument_list "(psVar7)" ( identifier )))) ;)) (if_statement "if (iVar3 == 0) goto LAB_00041d7d;" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00041d7d;" goto statement_identifier ;)) (labeled_statement "LAB_00041f3f:\n      fwrite(" extern",1,7,(FILE *)file);" statement_identifier : (expression_statement "fwrite(" extern",1,7,(FILE *)file);" (call_expression "fwrite(" extern",1,7,(FILE *)file)" identifier (argument_list "(" extern",1,7,(FILE *)file)" ( (string_literal "" extern"" " string_content ") , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;)) (expression_statement "iVar3 = S_IS_WEAK(psVar7);" (assignment_expression "iVar3 = S_IS_WEAK(psVar7)" identifier = (call_expression "S_IS_WEAK(psVar7)" identifier (argument_list "(psVar7)" ( identifier )))) ;) }) (else_clause "else {\n      fwrite(" used-in-reloc",1,0xe,(FILE *)file);\n      if (((uint)psVar7->sy_flags & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar3 = S_IS_LOCAL(psVar7);\n      if (iVar3 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,(FILE *)file);\n      iVar3 = S_IS_EXTERNAL(psVar7);\n      if (iVar3 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar3 = S_IS_WEAK(psVar7);\n    }" else (compound_statement "{\n      fwrite(" used-in-reloc",1,0xe,(FILE *)file);\n      if (((uint)psVar7->sy_flags & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar3 = S_IS_LOCAL(psVar7);\n      if (iVar3 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,(FILE *)file);\n      iVar3 = S_IS_EXTERNAL(psVar7);\n      if (iVar3 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar3 = S_IS_WEAK(psVar7);\n    }" { (expression_statement "fwrite(" used-in-reloc",1,0xe,(FILE *)file);" (call_expression "fwrite(" used-in-reloc",1,0xe,(FILE *)file)" identifier (argument_list "(" used-in-reloc",1,0xe,(FILE *)file)" ( (string_literal "" used-in-reloc"" " string_content ") , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (if_statement "if (((uint)psVar7->sy_flags & 0x20) != 0) goto LAB_00041eef;" if (parenthesized_expression "(((uint)psVar7->sy_flags & 0x20) != 0)" ( (binary_expression "((uint)psVar7->sy_flags & 0x20) != 0" (parenthesized_expression "((uint)psVar7->sy_flags & 0x20)" ( (binary_expression "(uint)psVar7->sy_flags & 0x20" (cast_expression "(uint)psVar7->sy_flags" ( (type_descriptor "uint" type_identifier) ) (field_expression "psVar7->sy_flags" identifier -> field_identifier)) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00041eef;" goto statement_identifier ;)) (labeled_statement "LAB_00041d55:\n      iVar3 = S_IS_LOCAL(psVar7);" statement_identifier : (expression_statement "iVar3 = S_IS_LOCAL(psVar7);" (assignment_expression "iVar3 = S_IS_LOCAL(psVar7)" identifier = (call_expression "S_IS_LOCAL(psVar7)" identifier (argument_list "(psVar7)" ( identifier )))) ;)) (if_statement "if (iVar3 == 0) goto LAB_00041d69;" if (parenthesized_expression "(iVar3 == 0)" ( (binary_expression "iVar3 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00041d69;" goto statement_identifier ;)) (labeled_statement "LAB_00041f17:\n      fwrite(" local",1,6,(FILE *)file);" statement_identifier : (expression_statement "fwrite(" local",1,6,(FILE *)file);" (call_expression "fwrite(" local",1,6,(FILE *)file)" identifier (argument_list "(" local",1,6,(FILE *)file)" ( (string_literal "" local"" " string_content ") , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;)) (expression_statement "iVar3 = S_IS_EXTERNAL(psVar7);" (assignment_expression "iVar3 = S_IS_EXTERNAL(psVar7)" identifier = (call_expression "S_IS_EXTERNAL(psVar7)" identifier (argument_list "(psVar7)" ( identifier )))) ;) (if_statement "if (iVar3 != 0) goto LAB_00041f3f;" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00041f3f;" goto statement_identifier ;)) (labeled_statement "LAB_00041d7d:\n      iVar3 = S_IS_WEAK(psVar7);" statement_identifier : (expression_statement "iVar3 = S_IS_WEAK(psVar7);" (assignment_expression "iVar3 = S_IS_WEAK(psVar7)" identifier = (call_expression "S_IS_WEAK(psVar7)" identifier (argument_list "(psVar7)" ( identifier )))) ;)) }))) (if_statement "if (iVar3 != 0) {\n      fwrite(&DAT_0005bc16,1,5,(FILE *)file);\n    }" if (parenthesized_expression "(iVar3 != 0)" ( (binary_expression "iVar3 != 0" identifier != number_literal) )) (compound_statement "{\n      fwrite(&DAT_0005bc16,1,5,(FILE *)file);\n    }" { (expression_statement "fwrite(&DAT_0005bc16,1,5,(FILE *)file);" (call_expression "fwrite(&DAT_0005bc16,1,5,(FILE *)file)" identifier (argument_list "(&DAT_0005bc16,1,5,(FILE *)file)" ( (pointer_expression "&DAT_0005bc16" & identifier) , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) })) (expression_statement "paVar4 = (segT)psVar7->bsym;" (assignment_expression "paVar4 = (segT)psVar7->bsym" identifier = (cast_expression "(segT)psVar7->bsym" ( (type_descriptor "segT" type_identifier) ) (field_expression "psVar7->bsym" identifier -> field_identifier))) ;) (if_statement "if (((uint)psVar7->sy_flags & 1) == 0) {\n      if (((uint)paVar4->prev & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,(FILE *)file);\n        paVar4 = (segT)psVar7->bsym;\n        if (((uint)psVar7->sy_flags & 1) != 0) {\n          if (paVar4 == reg_section) {\n            psVar5 = (psVar7->sy_value).X_op_symbol;\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)paVar4->flags != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }" if (parenthesized_expression "(((uint)psVar7->sy_flags & 1) == 0)" ( (binary_expression "((uint)psVar7->sy_flags & 1) == 0" (parenthesized_expression "((uint)psVar7->sy_flags & 1)" ( (binary_expression "(uint)psVar7->sy_flags & 1" (cast_expression "(uint)psVar7->sy_flags" ( (type_descriptor "uint" type_identifier) ) (field_expression "psVar7->sy_flags" identifier -> field_identifier)) & number_literal) )) == number_literal) )) (compound_statement "{\n      if (((uint)paVar4->prev & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,(FILE *)file);\n        paVar4 = (segT)psVar7->bsym;\n        if (((uint)psVar7->sy_flags & 1) != 0) {\n          if (paVar4 == reg_section) {\n            psVar5 = (psVar7->sy_value).X_op_symbol;\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)paVar4->flags != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }" { (if_statement "if (((uint)paVar4->prev & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,(FILE *)file);\n        paVar4 = (segT)psVar7->bsym;\n        if (((uint)psVar7->sy_flags & 1) != 0) {\n          if (paVar4 == reg_section) {\n            psVar5 = (psVar7->sy_value).X_op_symbol;\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }" if (parenthesized_expression "(((uint)paVar4->prev & 4) != 0)" ( (binary_expression "((uint)paVar4->prev & 4) != 0" (parenthesized_expression "((uint)paVar4->prev & 4)" ( (binary_expression "(uint)paVar4->prev & 4" (cast_expression "(uint)paVar4->prev" ( (type_descriptor "uint" type_identifier) ) (field_expression "paVar4->prev" identifier -> field_identifier)) & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00042130:\n        fwrite(" debug",1,6,(FILE *)file);\n        paVar4 = (segT)psVar7->bsym;\n        if (((uint)psVar7->sy_flags & 1) != 0) {\n          if (paVar4 == reg_section) {\n            psVar5 = (psVar7->sy_value).X_op_symbol;\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }" { (labeled_statement "LAB_00042130:\n        fwrite(" debug",1,6,(FILE *)file);" statement_identifier : (expression_statement "fwrite(" debug",1,6,(FILE *)file);" (call_expression "fwrite(" debug",1,6,(FILE *)file)" identifier (argument_list "(" debug",1,6,(FILE *)file)" ( (string_literal "" debug"" " string_content ") , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;)) (expression_statement "paVar4 = (segT)psVar7->bsym;" (assignment_expression "paVar4 = (segT)psVar7->bsym" identifier = (cast_expression "(segT)psVar7->bsym" ( (type_descriptor "segT" type_identifier) ) (field_expression "psVar7->bsym" identifier -> field_identifier))) ;) (if_statement "if (((uint)psVar7->sy_flags & 1) != 0) {\n          if (paVar4 == reg_section) {\n            psVar5 = (psVar7->sy_value).X_op_symbol;\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }" if (parenthesized_expression "(((uint)psVar7->sy_flags & 1) != 0)" ( (binary_expression "((uint)psVar7->sy_flags & 1) != 0" (parenthesized_expression "((uint)psVar7->sy_flags & 1)" ( (binary_expression "(uint)psVar7->sy_flags & 1" (cast_expression "(uint)psVar7->sy_flags" ( (type_descriptor "uint" type_identifier) ) (field_expression "psVar7->sy_flags" identifier -> field_identifier)) & number_literal) )) != number_literal) )) (compound_statement "{\n          if (paVar4 == reg_section) {\n            psVar5 = (psVar7->sy_value).X_op_symbol;\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }" { (if_statement "if (paVar4 == reg_section) {\n            psVar5 = (psVar7->sy_value).X_op_symbol;\n            goto LAB_0004219c;\n          }" if (parenthesized_expression "(paVar4 == reg_section)" ( (binary_expression "paVar4 == reg_section" identifier == identifier) )) (compound_statement "{\n            psVar5 = (psVar7->sy_value).X_op_symbol;\n            goto LAB_0004219c;\n          }" { (expression_statement "psVar5 = (psVar7->sy_value).X_op_symbol;" (assignment_expression "psVar5 = (psVar7->sy_value).X_op_symbol" identifier = (field_expression "(psVar7->sy_value).X_op_symbol" (parenthesized_expression "(psVar7->sy_value)" ( (field_expression "psVar7->sy_value" identifier -> field_identifier) )) . field_identifier)) ;) (goto_statement "goto LAB_0004219c;" goto statement_identifier ;) })) (goto_statement "goto LAB_00041e70;" goto statement_identifier ;) })) })) (if_statement "if ((undefined *)paVar4->flags != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;" if (parenthesized_expression "((undefined *)paVar4->flags != PTR__bfd_std_section_00077fa0 + 0xc0)" ( (binary_expression "(undefined *)paVar4->flags != PTR__bfd_std_section_00077fa0 + 0xc0" (cast_expression "(undefined *)paVar4->flags" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (field_expression "paVar4->flags" identifier -> field_identifier)) != (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" identifier + number_literal)) )) (goto_statement "goto LAB_00041e84;" goto statement_identifier ;)) (goto_statement "goto LAB_00041dbc;" goto statement_identifier ;) })) (if_statement "if (reg_section == paVar4) {\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      if ((psVar5->bsym->flags & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (psVar5->bsym->section == (bfd_section *)(PTR__bfd_std_section_00077fa0 + 0xc0))\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,(FILE *)file);\n      goto LAB_00041cce;\n    }" if (parenthesized_expression "(reg_section == paVar4)" ( (binary_expression "reg_section == paVar4" identifier == identifier) )) (compound_statement "{\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      if ((psVar5->bsym->flags & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (psVar5->bsym->section == (bfd_section *)(PTR__bfd_std_section_00077fa0 + 0xc0))\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,(FILE *)file);\n      goto LAB_00041cce;\n    }" { (expression_statement "psVar5 = (psVar7->sy_value).X_op_symbol;" (assignment_expression "psVar5 = (psVar7->sy_value).X_op_symbol" identifier = (field_expression "(psVar7->sy_value).X_op_symbol" (parenthesized_expression "(psVar7->sy_value)" ( (field_expression "psVar7->sy_value" identifier -> field_identifier) )) . field_identifier)) ;) (if_statement "if ((psVar5->bsym->flags & 4) != 0) goto LAB_00042130;" if (parenthesized_expression "((psVar5->bsym->flags & 4) != 0)" ( (binary_expression "(psVar5->bsym->flags & 4) != 0" (parenthesized_expression "(psVar5->bsym->flags & 4)" ( (binary_expression "psVar5->bsym->flags & 4" (field_expression "psVar5->bsym->flags" (field_expression "psVar5->bsym" identifier -> field_identifier) -> field_identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00042130;" goto statement_identifier ;)) (labeled_statement "LAB_0004219c:\n      if (psVar5->bsym->section == (bfd_section *)(PTR__bfd_std_section_00077fa0 + 0xc0))\n      goto LAB_00041cce;" statement_identifier : (if_statement "if (psVar5->bsym->section == (bfd_section *)(PTR__bfd_std_section_00077fa0 + 0xc0))\n      goto LAB_00041cce;" if (parenthesized_expression "(psVar5->bsym->section == (bfd_section *)(PTR__bfd_std_section_00077fa0 + 0xc0))" ( (binary_expression "psVar5->bsym->section == (bfd_section *)(PTR__bfd_std_section_00077fa0 + 0xc0)" (field_expression "psVar5->bsym->section" (field_expression "psVar5->bsym" identifier -> field_identifier) -> field_identifier) == (cast_expression "(bfd_section *)(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (type_descriptor "bfd_section *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" identifier + number_literal) )))) )) (goto_statement "goto LAB_00041cce;" goto statement_identifier ;))) (labeled_statement "LAB_00041e84:\n      fwrite(" defined",1,8,(FILE *)file);" statement_identifier : (expression_statement "fwrite(" defined",1,8,(FILE *)file);" (call_expression "fwrite(" defined",1,8,(FILE *)file)" identifier (argument_list "(" defined",1,8,(FILE *)file)" ( (string_literal "" defined"" " string_content ") , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;)) (goto_statement "goto LAB_00041cce;" goto statement_identifier ;) })) (labeled_statement "LAB_00041e70:\n    if (paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;" statement_identifier : (if_statement "if (paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;" if (parenthesized_expression "(paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0))" ( (binary_expression "paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)" identifier != (call_expression "(segT)(PTR__bfd_std_section_00077fa0 + 0xc0)" (parenthesized_expression "(segT)" ( identifier )) (argument_list "(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" identifier + number_literal) )))) )) (goto_statement "goto LAB_00041e84;" goto statement_identifier ;))) (labeled_statement "LAB_00041ce2:\n    if (reg_section == paVar4) {\n      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,(FILE *)file);\n        if (((uint)psVar7->sy_flags & 1) == 0) goto LAB_00041dc6;\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section != paVar4) goto LAB_00041dd8;\n      }\n      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      goto LAB_00041dd2;\n    }" statement_identifier : (if_statement "if (reg_section == paVar4) {\n      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,(FILE *)file);\n        if (((uint)psVar7->sy_flags & 1) == 0) goto LAB_00041dc6;\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section != paVar4) goto LAB_00041dd8;\n      }\n      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      goto LAB_00041dd2;\n    }" if (parenthesized_expression "(reg_section == paVar4)" ( (binary_expression "reg_section == paVar4" identifier == identifier) )) (compound_statement "{\n      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,(FILE *)file);\n        if (((uint)psVar7->sy_flags & 1) == 0) goto LAB_00041dc6;\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section != paVar4) goto LAB_00041dd8;\n      }\n      if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      goto LAB_00041dd2;\n    }" { (if_statement "if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,(FILE *)file);\n        if (((uint)psVar7->sy_flags & 1) == 0) goto LAB_00041dc6;\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section != paVar4) goto LAB_00041dd8;\n      }" if (parenthesized_expression "(((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 2) != 0)" ( (binary_expression "((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 2) != 0" (parenthesized_expression "((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 2)" ( (binary_expression "(((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 2" (field_expression "(((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1" (parenthesized_expression "(((psVar7->sy_value).X_op_symbol)->sy_flags)" ( (field_expression "((psVar7->sy_value).X_op_symbol)->sy_flags" (parenthesized_expression "((psVar7->sy_value).X_op_symbol)" ( (field_expression "(psVar7->sy_value).X_op_symbol" (parenthesized_expression "(psVar7->sy_value)" ( (field_expression "psVar7->sy_value" identifier -> field_identifier) )) . field_identifier) )) -> field_identifier) )) . field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,(FILE *)file);\n        if (((uint)psVar7->sy_flags & 1) == 0) goto LAB_00041dc6;\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section != paVar4) goto LAB_00041dd8;\n      }" { (labeled_statement "LAB_00041fc0:\n        fwrite(" weakrefr",1,9,(FILE *)file);" statement_identifier : (expression_statement "fwrite(" weakrefr",1,9,(FILE *)file);" (call_expression "fwrite(" weakrefr",1,9,(FILE *)file)" identifier (argument_list "(" weakrefr",1,9,(FILE *)file)" ( (string_literal "" weakrefr"" " string_content ") , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;)) (if_statement "if (((uint)psVar7->sy_flags & 1) == 0) goto LAB_00041dc6;" if (parenthesized_expression "(((uint)psVar7->sy_flags & 1) == 0)" ( (binary_expression "((uint)psVar7->sy_flags & 1) == 0" (parenthesized_expression "((uint)psVar7->sy_flags & 1)" ( (binary_expression "(uint)psVar7->sy_flags & 1" (cast_expression "(uint)psVar7->sy_flags" ( (type_descriptor "uint" type_identifier) ) (field_expression "psVar7->sy_flags" identifier -> field_identifier)) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00041dc6;" goto statement_identifier ;)) (expression_statement "paVar4 = (segT)psVar7->bsym;" (assignment_expression "paVar4 = (segT)psVar7->bsym" identifier = (cast_expression "(segT)psVar7->bsym" ( (type_descriptor "segT" type_identifier) ) (field_expression "psVar7->bsym" identifier -> field_identifier))) ;) (if_statement "if (reg_section != paVar4) goto LAB_00041dd8;" if (parenthesized_expression "(reg_section != paVar4)" ( (binary_expression "reg_section != paVar4" identifier != identifier) )) (goto_statement "goto LAB_00041dd8;" goto statement_identifier ;)) })) (if_statement "if (((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 4) != 0) goto LAB_00041ff8;" if (parenthesized_expression "(((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 4) != 0)" ( (binary_expression "((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 4) != 0" (parenthesized_expression "((((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 4)" ( (binary_expression "(((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1 & 4" (field_expression "(((psVar7->sy_value).X_op_symbol)->sy_flags).field_0x1" (parenthesized_expression "(((psVar7->sy_value).X_op_symbol)->sy_flags)" ( (field_expression "((psVar7->sy_value).X_op_symbol)->sy_flags" (parenthesized_expression "((psVar7->sy_value).X_op_symbol)" ( (field_expression "(psVar7->sy_value).X_op_symbol" (parenthesized_expression "(psVar7->sy_value)" ( (field_expression "psVar7->sy_value" identifier -> field_identifier) )) . field_identifier) )) -> field_identifier) )) . field_identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00041ff8;" goto statement_identifier ;)) (labeled_statement "LAB_00042102:\n      psVar5 = (psVar7->sy_value).X_op_symbol;" statement_identifier : (expression_statement "psVar5 = (psVar7->sy_value).X_op_symbol;" (assignment_expression "psVar5 = (psVar7->sy_value).X_op_symbol" identifier = (field_expression "(psVar7->sy_value).X_op_symbol" (parenthesized_expression "(psVar7->sy_value)" ( (field_expression "psVar7->sy_value" identifier -> field_identifier) )) . field_identifier)) ;)) (goto_statement "goto LAB_00041dd2;" goto statement_identifier ;) }))) }) (else_clause "else {\n    if ((psVar7 != (symbolS *)0x0) && (psVar7 != (symbolS *)PTR_zero_address_frag_00077f60)) {\n      fwrite(" frag ",1,6,(FILE *)file);\n      fprintf((FILE *)file,"%016llx",(sym->sy_value).X_op_symbol,0);\n      bVar2 = *(byte *)&sym->sy_flags;\n    }\n    if ((bVar2 & 4) != 0) {\n      fwrite(" resolved",1,9,(FILE *)file);\n    }\n    fwrite(" local",1,6,(FILE *)file);\n    psVar7 = sym;\nLAB_00041cce:\n    if (((uint)psVar7->sy_flags & 1) != 0) {\n      paVar4 = (segT)psVar7->bsym;\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if (((psVar7->sy_flags).field_0x1 & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    psVar5 = psVar7;\n    if (((psVar7->sy_flags).field_0x1 & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,(FILE *)file);\n      psVar5 = psVar7;\n      if (((uint)psVar7->sy_flags & 1) != 0) {\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section == paVar4) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    paVar4 = psVar5->bsym->section;\n  }" else (compound_statement "{\n    if ((psVar7 != (symbolS *)0x0) && (psVar7 != (symbolS *)PTR_zero_address_frag_00077f60)) {\n      fwrite(" frag ",1,6,(FILE *)file);\n      fprintf((FILE *)file,"%016llx",(sym->sy_value).X_op_symbol,0);\n      bVar2 = *(byte *)&sym->sy_flags;\n    }\n    if ((bVar2 & 4) != 0) {\n      fwrite(" resolved",1,9,(FILE *)file);\n    }\n    fwrite(" local",1,6,(FILE *)file);\n    psVar7 = sym;\nLAB_00041cce:\n    if (((uint)psVar7->sy_flags & 1) != 0) {\n      paVar4 = (segT)psVar7->bsym;\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if (((psVar7->sy_flags).field_0x1 & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    psVar5 = psVar7;\n    if (((psVar7->sy_flags).field_0x1 & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,(FILE *)file);\n      psVar5 = psVar7;\n      if (((uint)psVar7->sy_flags & 1) != 0) {\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section == paVar4) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    paVar4 = psVar5->bsym->section;\n  }" { (if_statement "if ((psVar7 != (symbolS *)0x0) && (psVar7 != (symbolS *)PTR_zero_address_frag_00077f60)) {\n      fwrite(" frag ",1,6,(FILE *)file);\n      fprintf((FILE *)file,"%016llx",(sym->sy_value).X_op_symbol,0);\n      bVar2 = *(byte *)&sym->sy_flags;\n    }" if (parenthesized_expression "((psVar7 != (symbolS *)0x0) && (psVar7 != (symbolS *)PTR_zero_address_frag_00077f60))" ( (binary_expression "(psVar7 != (symbolS *)0x0) && (psVar7 != (symbolS *)PTR_zero_address_frag_00077f60)" (parenthesized_expression "(psVar7 != (symbolS *)0x0)" ( (binary_expression "psVar7 != (symbolS *)0x0" identifier != (cast_expression "(symbolS *)0x0" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(psVar7 != (symbolS *)PTR_zero_address_frag_00077f60)" ( (binary_expression "psVar7 != (symbolS *)PTR_zero_address_frag_00077f60" identifier != (cast_expression "(symbolS *)PTR_zero_address_frag_00077f60" ( (type_descriptor "symbolS *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ))) )) (compound_statement "{\n      fwrite(" frag ",1,6,(FILE *)file);\n      fprintf((FILE *)file,"%016llx",(sym->sy_value).X_op_symbol,0);\n      bVar2 = *(byte *)&sym->sy_flags;\n    }" { (expression_statement "fwrite(" frag ",1,6,(FILE *)file);" (call_expression "fwrite(" frag ",1,6,(FILE *)file)" identifier (argument_list "(" frag ",1,6,(FILE *)file)" ( (string_literal "" frag "" " string_content ") , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "fprintf((FILE *)file,"%016llx",(sym->sy_value).X_op_symbol,0);" (call_expression "fprintf((FILE *)file,"%016llx",(sym->sy_value).X_op_symbol,0)" identifier (argument_list "((FILE *)file,"%016llx",(sym->sy_value).X_op_symbol,0)" ( (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""%016llx"" " string_content ") , (field_expression "(sym->sy_value).X_op_symbol" (parenthesized_expression "(sym->sy_value)" ( (field_expression "sym->sy_value" identifier -> field_identifier) )) . field_identifier) , number_literal ))) ;) (expression_statement "bVar2 = *(byte *)&sym->sy_flags;" (assignment_expression "bVar2 = *(byte *)&sym->sy_flags" identifier = (pointer_expression "*(byte *)&sym->sy_flags" * (cast_expression "(byte *)&sym->sy_flags" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (pointer_expression "&sym->sy_flags" & (field_expression "sym->sy_flags" identifier -> field_identifier))))) ;) })) (if_statement "if ((bVar2 & 4) != 0) {\n      fwrite(" resolved",1,9,(FILE *)file);\n    }" if (parenthesized_expression "((bVar2 & 4) != 0)" ( (binary_expression "(bVar2 & 4) != 0" (parenthesized_expression "(bVar2 & 4)" ( (binary_expression "bVar2 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      fwrite(" resolved",1,9,(FILE *)file);\n    }" { (expression_statement "fwrite(" resolved",1,9,(FILE *)file);" (call_expression "fwrite(" resolved",1,9,(FILE *)file)" identifier (argument_list "(" resolved",1,9,(FILE *)file)" ( (string_literal "" resolved"" " string_content ") , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) })) (expression_statement "fwrite(" local",1,6,(FILE *)file);" (call_expression "fwrite(" local",1,6,(FILE *)file)" identifier (argument_list "(" local",1,6,(FILE *)file)" ( (string_literal "" local"" " string_content ") , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "psVar7 = sym;" (assignment_expression "psVar7 = sym" identifier = identifier) ;) (labeled_statement "LAB_00041cce:\n    if (((uint)psVar7->sy_flags & 1) != 0) {\n      paVar4 = (segT)psVar7->bsym;\n      goto LAB_00041ce2;\n    }" statement_identifier : (if_statement "if (((uint)psVar7->sy_flags & 1) != 0) {\n      paVar4 = (segT)psVar7->bsym;\n      goto LAB_00041ce2;\n    }" if (parenthesized_expression "(((uint)psVar7->sy_flags & 1) != 0)" ( (binary_expression "((uint)psVar7->sy_flags & 1) != 0" (parenthesized_expression "((uint)psVar7->sy_flags & 1)" ( (binary_expression "(uint)psVar7->sy_flags & 1" (cast_expression "(uint)psVar7->sy_flags" ( (type_descriptor "uint" type_identifier) ) (field_expression "psVar7->sy_flags" identifier -> field_identifier)) & number_literal) )) != number_literal) )) (compound_statement "{\n      paVar4 = (segT)psVar7->bsym;\n      goto LAB_00041ce2;\n    }" { (expression_statement "paVar4 = (segT)psVar7->bsym;" (assignment_expression "paVar4 = (segT)psVar7->bsym" identifier = (cast_expression "(segT)psVar7->bsym" ( (type_descriptor "segT" type_identifier) ) (field_expression "psVar7->bsym" identifier -> field_identifier))) ;) (goto_statement "goto LAB_00041ce2;" goto statement_identifier ;) }))) (labeled_statement "LAB_00041dbc:\n    if (((psVar7->sy_flags).field_0x1 & 2) != 0) goto LAB_00041fc0;" statement_identifier : (if_statement "if (((psVar7->sy_flags).field_0x1 & 2) != 0) goto LAB_00041fc0;" if (parenthesized_expression "(((psVar7->sy_flags).field_0x1 & 2) != 0)" ( (binary_expression "((psVar7->sy_flags).field_0x1 & 2) != 0" (parenthesized_expression "((psVar7->sy_flags).field_0x1 & 2)" ( (binary_expression "(psVar7->sy_flags).field_0x1 & 2" (field_expression "(psVar7->sy_flags).field_0x1" (parenthesized_expression "(psVar7->sy_flags)" ( (field_expression "psVar7->sy_flags" identifier -> field_identifier) )) . field_identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00041fc0;" goto statement_identifier ;))) (labeled_statement "LAB_00041dc6:\n    psVar5 = psVar7;" statement_identifier : (expression_statement "psVar5 = psVar7;" (assignment_expression "psVar5 = psVar7" identifier = identifier) ;)) (if_statement "if (((psVar7->sy_flags).field_0x1 & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,(FILE *)file);\n      psVar5 = psVar7;\n      if (((uint)psVar7->sy_flags & 1) != 0) {\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section == paVar4) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }" if (parenthesized_expression "(((psVar7->sy_flags).field_0x1 & 4) != 0)" ( (binary_expression "((psVar7->sy_flags).field_0x1 & 4) != 0" (parenthesized_expression "((psVar7->sy_flags).field_0x1 & 4)" ( (binary_expression "(psVar7->sy_flags).field_0x1 & 4" (field_expression "(psVar7->sy_flags).field_0x1" (parenthesized_expression "(psVar7->sy_flags)" ( (field_expression "psVar7->sy_flags" identifier -> field_identifier) )) . field_identifier) & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,(FILE *)file);\n      psVar5 = psVar7;\n      if (((uint)psVar7->sy_flags & 1) != 0) {\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section == paVar4) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }" { (labeled_statement "LAB_00041ff8:\n      fwrite(" weakrefd",1,9,(FILE *)file);" statement_identifier : (expression_statement "fwrite(" weakrefd",1,9,(FILE *)file);" (call_expression "fwrite(" weakrefd",1,9,(FILE *)file)" identifier (argument_list "(" weakrefd",1,9,(FILE *)file)" ( (string_literal "" weakrefd"" " string_content ") , number_literal , number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;)) (expression_statement "psVar5 = psVar7;" (assignment_expression "psVar5 = psVar7" identifier = identifier) ;) (if_statement "if (((uint)psVar7->sy_flags & 1) != 0) {\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section == paVar4) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }" if (parenthesized_expression "(((uint)psVar7->sy_flags & 1) != 0)" ( (binary_expression "((uint)psVar7->sy_flags & 1) != 0" (parenthesized_expression "((uint)psVar7->sy_flags & 1)" ( (binary_expression "(uint)psVar7->sy_flags & 1" (cast_expression "(uint)psVar7->sy_flags" ( (type_descriptor "uint" type_identifier) ) (field_expression "psVar7->sy_flags" identifier -> field_identifier)) & number_literal) )) != number_literal) )) (compound_statement "{\n        paVar4 = (segT)psVar7->bsym;\n        if (reg_section == paVar4) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }" { (expression_statement "paVar4 = (segT)psVar7->bsym;" (assignment_expression "paVar4 = (segT)psVar7->bsym" identifier = (cast_expression "(segT)psVar7->bsym" ( (type_descriptor "segT" type_identifier) ) (field_expression "psVar7->bsym" identifier -> field_identifier))) ;) (if_statement "if (reg_section == paVar4) goto LAB_00042102;" if (parenthesized_expression "(reg_section == paVar4)" ( (binary_expression "reg_section == paVar4" identifier == identifier) )) (goto_statement "goto LAB_00042102;" goto statement_identifier ;)) (goto_statement "goto LAB_00041dd8;" goto statement_identifier ;) })) })) (labeled_statement "LAB_00041dd2:\n    paVar4 = psVar5->bsym->section;" statement_identifier : (expression_statement "paVar4 = psVar5->bsym->section;" (assignment_expression "paVar4 = psVar5->bsym->section" identifier = (field_expression "psVar5->bsym->section" (field_expression "psVar5->bsym" identifier -> field_identifier) -> field_identifier)) ;)) }))) (labeled_statement "LAB_00041dd8:\n  fprintf((FILE *)file," %s",paVar4->name);" statement_identifier : (expression_statement "fprintf((FILE *)file," %s",paVar4->name);" (call_expression "fprintf((FILE *)file," %s",paVar4->name)" identifier (argument_list "((FILE *)file," %s",paVar4->name)" ( (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal "" %s"" " string_content ") , (field_expression "paVar4->name" identifier -> field_identifier) ))) ;)) (expression_statement "sVar1 = psVar7->sy_flags;" (assignment_expression "sVar1 = psVar7->sy_flags" identifier = (field_expression "psVar7->sy_flags" identifier -> field_identifier)) ;) (if_statement "if (((uint)sVar1 & 1) == 0) {\n    psVar5 = psVar7;\n    if (((uint)sVar1 & 4) != 0) {\nLAB_00041ea6:\n      paVar4 = psVar5->bsym->section;\nLAB_00041e13:\n      if ((paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) && (expr_section != paVar4)) {\n        vVar8 = S_GET_VALUE(psVar7);\n        fprintf((FILE *)file," %lx",(int)vVar8);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < indent_level) goto LAB_00041e47;\n    paVar6 = psVar7->bsym;\nLAB_00041ec8:\n    paVar4 = paVar6->section;\n  }\n  else {\n    paVar4 = (segT)psVar7->bsym;\n    if (paVar4 == reg_section) {\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      if (((uint)psVar5->sy_flags & 4) != 0) goto LAB_00041ea6;\n      if (7 < indent_level) goto LAB_00041e47;\n      paVar6 = psVar5->bsym;\n      goto LAB_00041ec8;\n    }\n    if (((uint)sVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < indent_level) goto LAB_00041e47;\n  }" if (parenthesized_expression "(((uint)sVar1 & 1) == 0)" ( (binary_expression "((uint)sVar1 & 1) == 0" (parenthesized_expression "((uint)sVar1 & 1)" ( (binary_expression "(uint)sVar1 & 1" (cast_expression "(uint)sVar1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n    psVar5 = psVar7;\n    if (((uint)sVar1 & 4) != 0) {\nLAB_00041ea6:\n      paVar4 = psVar5->bsym->section;\nLAB_00041e13:\n      if ((paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) && (expr_section != paVar4)) {\n        vVar8 = S_GET_VALUE(psVar7);\n        fprintf((FILE *)file," %lx",(int)vVar8);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < indent_level) goto LAB_00041e47;\n    paVar6 = psVar7->bsym;\nLAB_00041ec8:\n    paVar4 = paVar6->section;\n  }" { (expression_statement "psVar5 = psVar7;" (assignment_expression "psVar5 = psVar7" identifier = identifier) ;) (if_statement "if (((uint)sVar1 & 4) != 0) {\nLAB_00041ea6:\n      paVar4 = psVar5->bsym->section;\nLAB_00041e13:\n      if ((paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) && (expr_section != paVar4)) {\n        vVar8 = S_GET_VALUE(psVar7);\n        fprintf((FILE *)file," %lx",(int)vVar8);\n      }\n      goto LAB_00041e47;\n    }" if (parenthesized_expression "(((uint)sVar1 & 4) != 0)" ( (binary_expression "((uint)sVar1 & 4) != 0" (parenthesized_expression "((uint)sVar1 & 4)" ( (binary_expression "(uint)sVar1 & 4" (cast_expression "(uint)sVar1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00041ea6:\n      paVar4 = psVar5->bsym->section;\nLAB_00041e13:\n      if ((paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) && (expr_section != paVar4)) {\n        vVar8 = S_GET_VALUE(psVar7);\n        fprintf((FILE *)file," %lx",(int)vVar8);\n      }\n      goto LAB_00041e47;\n    }" { (labeled_statement "LAB_00041ea6:\n      paVar4 = psVar5->bsym->section;" statement_identifier : (expression_statement "paVar4 = psVar5->bsym->section;" (assignment_expression "paVar4 = psVar5->bsym->section" identifier = (field_expression "psVar5->bsym->section" (field_expression "psVar5->bsym" identifier -> field_identifier) -> field_identifier)) ;)) (labeled_statement "LAB_00041e13:\n      if ((paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) && (expr_section != paVar4)) {\n        vVar8 = S_GET_VALUE(psVar7);\n        fprintf((FILE *)file," %lx",(int)vVar8);\n      }" statement_identifier : (if_statement "if ((paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) && (expr_section != paVar4)) {\n        vVar8 = S_GET_VALUE(psVar7);\n        fprintf((FILE *)file," %lx",(int)vVar8);\n      }" if (parenthesized_expression "((paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) && (expr_section != paVar4))" ( (binary_expression "(paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) && (expr_section != paVar4)" (parenthesized_expression "(paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0))" ( (binary_expression "paVar4 != (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)" identifier != (call_expression "(segT)(PTR__bfd_std_section_00077fa0 + 0xc0)" (parenthesized_expression "(segT)" ( identifier )) (argument_list "(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" identifier + number_literal) )))) )) && (parenthesized_expression "(expr_section != paVar4)" ( (binary_expression "expr_section != paVar4" identifier != identifier) ))) )) (compound_statement "{\n        vVar8 = S_GET_VALUE(psVar7);\n        fprintf((FILE *)file," %lx",(int)vVar8);\n      }" { (expression_statement "vVar8 = S_GET_VALUE(psVar7);" (assignment_expression "vVar8 = S_GET_VALUE(psVar7)" identifier = (call_expression "S_GET_VALUE(psVar7)" identifier (argument_list "(psVar7)" ( identifier )))) ;) (expression_statement "fprintf((FILE *)file," %lx",(int)vVar8);" (call_expression "fprintf((FILE *)file," %lx",(int)vVar8)" identifier (argument_list "((FILE *)file," %lx",(int)vVar8)" ( (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal "" %lx"" " string_content ") , (cast_expression "(int)vVar8" ( (type_descriptor "int" primitive_type) ) identifier) ))) ;) }))) (goto_statement "goto LAB_00041e47;" goto statement_identifier ;) })) (if_statement "if (7 < indent_level) goto LAB_00041e47;" if (parenthesized_expression "(7 < indent_level)" ( (binary_expression "7 < indent_level" number_literal < identifier) )) (goto_statement "goto LAB_00041e47;" goto statement_identifier ;)) (expression_statement "paVar6 = psVar7->bsym;" (assignment_expression "paVar6 = psVar7->bsym" identifier = (field_expression "psVar7->bsym" identifier -> field_identifier)) ;) (labeled_statement "LAB_00041ec8:\n    paVar4 = paVar6->section;" statement_identifier : (expression_statement "paVar4 = paVar6->section;" (assignment_expression "paVar4 = paVar6->section" identifier = (field_expression "paVar6->section" identifier -> field_identifier)) ;)) }) (else_clause "else {\n    paVar4 = (segT)psVar7->bsym;\n    if (paVar4 == reg_section) {\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      if (((uint)psVar5->sy_flags & 4) != 0) goto LAB_00041ea6;\n      if (7 < indent_level) goto LAB_00041e47;\n      paVar6 = psVar5->bsym;\n      goto LAB_00041ec8;\n    }\n    if (((uint)sVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < indent_level) goto LAB_00041e47;\n  }" else (compound_statement "{\n    paVar4 = (segT)psVar7->bsym;\n    if (paVar4 == reg_section) {\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      if (((uint)psVar5->sy_flags & 4) != 0) goto LAB_00041ea6;\n      if (7 < indent_level) goto LAB_00041e47;\n      paVar6 = psVar5->bsym;\n      goto LAB_00041ec8;\n    }\n    if (((uint)sVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < indent_level) goto LAB_00041e47;\n  }" { (expression_statement "paVar4 = (segT)psVar7->bsym;" (assignment_expression "paVar4 = (segT)psVar7->bsym" identifier = (cast_expression "(segT)psVar7->bsym" ( (type_descriptor "segT" type_identifier) ) (field_expression "psVar7->bsym" identifier -> field_identifier))) ;) (if_statement "if (paVar4 == reg_section) {\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      if (((uint)psVar5->sy_flags & 4) != 0) goto LAB_00041ea6;\n      if (7 < indent_level) goto LAB_00041e47;\n      paVar6 = psVar5->bsym;\n      goto LAB_00041ec8;\n    }" if (parenthesized_expression "(paVar4 == reg_section)" ( (binary_expression "paVar4 == reg_section" identifier == identifier) )) (compound_statement "{\n      psVar5 = (psVar7->sy_value).X_op_symbol;\n      if (((uint)psVar5->sy_flags & 4) != 0) goto LAB_00041ea6;\n      if (7 < indent_level) goto LAB_00041e47;\n      paVar6 = psVar5->bsym;\n      goto LAB_00041ec8;\n    }" { (expression_statement "psVar5 = (psVar7->sy_value).X_op_symbol;" (assignment_expression "psVar5 = (psVar7->sy_value).X_op_symbol" identifier = (field_expression "(psVar7->sy_value).X_op_symbol" (parenthesized_expression "(psVar7->sy_value)" ( (field_expression "psVar7->sy_value" identifier -> field_identifier) )) . field_identifier)) ;) (if_statement "if (((uint)psVar5->sy_flags & 4) != 0) goto LAB_00041ea6;" if (parenthesized_expression "(((uint)psVar5->sy_flags & 4) != 0)" ( (binary_expression "((uint)psVar5->sy_flags & 4) != 0" (parenthesized_expression "((uint)psVar5->sy_flags & 4)" ( (binary_expression "(uint)psVar5->sy_flags & 4" (cast_expression "(uint)psVar5->sy_flags" ( (type_descriptor "uint" type_identifier) ) (field_expression "psVar5->sy_flags" identifier -> field_identifier)) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00041ea6;" goto statement_identifier ;)) (if_statement "if (7 < indent_level) goto LAB_00041e47;" if (parenthesized_expression "(7 < indent_level)" ( (binary_expression "7 < indent_level" number_literal < identifier) )) (goto_statement "goto LAB_00041e47;" goto statement_identifier ;)) (expression_statement "paVar6 = psVar5->bsym;" (assignment_expression "paVar6 = psVar5->bsym" identifier = (field_expression "psVar5->bsym" identifier -> field_identifier)) ;) (goto_statement "goto LAB_00041ec8;" goto statement_identifier ;) })) (if_statement "if (((uint)sVar1 & 4) != 0) goto LAB_00041e13;" if (parenthesized_expression "(((uint)sVar1 & 4) != 0)" ( (binary_expression "((uint)sVar1 & 4) != 0" (parenthesized_expression "((uint)sVar1 & 4)" ( (binary_expression "(uint)sVar1 & 4" (cast_expression "(uint)sVar1" ( (type_descriptor "uint" type_identifier) ) identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00041e13;" goto statement_identifier ;)) (if_statement "if (7 < indent_level) goto LAB_00041e47;" if (parenthesized_expression "(7 < indent_level)" ( (binary_expression "7 < indent_level" number_literal < identifier) )) (goto_statement "goto LAB_00041e47;" goto statement_identifier ;)) }))) (if_statement "if (paVar4 == (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;" if (parenthesized_expression "(paVar4 == (segT)(PTR__bfd_std_section_00077fa0 + 0xc0))" ( (binary_expression "paVar4 == (segT)(PTR__bfd_std_section_00077fa0 + 0xc0)" identifier == (call_expression "(segT)(PTR__bfd_std_section_00077fa0 + 0xc0)" (parenthesized_expression "(segT)" ( identifier )) (argument_list "(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" identifier + number_literal) )))) )) (goto_statement "goto LAB_00041e47;" goto statement_identifier ;)) (expression_statement "indent_level = indent_level + 1;" (assignment_expression "indent_level = indent_level + 1" identifier = (binary_expression "indent_level + 1" identifier + number_literal)) ;) (expression_statement "puVar9 = &DAT_00057aaa;" (assignment_expression "puVar9 = &DAT_00057aaa" identifier = (pointer_expression "&DAT_00057aaa" & identifier)) ;) (expression_statement "fprintf((FILE *)file,"\n%*s<",indent_level * 4,&DAT_00057aaa);" (call_expression "fprintf((FILE *)file,"\n%*s<",indent_level * 4,&DAT_00057aaa)" identifier (argument_list "((FILE *)file,"\n%*s<",indent_level * 4,&DAT_00057aaa)" ( (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""\n%*s<"" " escape_sequence string_content ") , (binary_expression "indent_level * 4" identifier * number_literal) , (pointer_expression "&DAT_00057aaa" & identifier) ))) ;) (if_statement "if (((uint)psVar7->sy_flags & 1) == 0) {\nLAB_000421c3:\n    print_expr_1(file,&psVar7->sy_value);\n  }\n  else {\n    if ((segT)psVar7->bsym == reg_section) {\n      psVar7 = (psVar7->sy_value).X_op_symbol;\n      goto LAB_000421c3;\n    }\n    fprintf((FILE *)file,"constant %lx",(int)(psVar7->sy_value).X_add_number,puVar9);\n  }" if (parenthesized_expression "(((uint)psVar7->sy_flags & 1) == 0)" ( (binary_expression "((uint)psVar7->sy_flags & 1) == 0" (parenthesized_expression "((uint)psVar7->sy_flags & 1)" ( (binary_expression "(uint)psVar7->sy_flags & 1" (cast_expression "(uint)psVar7->sy_flags" ( (type_descriptor "uint" type_identifier) ) (field_expression "psVar7->sy_flags" identifier -> field_identifier)) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_000421c3:\n    print_expr_1(file,&psVar7->sy_value);\n  }" { (labeled_statement "LAB_000421c3:\n    print_expr_1(file,&psVar7->sy_value);" statement_identifier : (expression_statement "print_expr_1(file,&psVar7->sy_value);" (call_expression "print_expr_1(file,&psVar7->sy_value)" identifier (argument_list "(file,&psVar7->sy_value)" ( identifier , (pointer_expression "&psVar7->sy_value" & (field_expression "psVar7->sy_value" identifier -> field_identifier)) ))) ;)) }) (else_clause "else {\n    if ((segT)psVar7->bsym == reg_section) {\n      psVar7 = (psVar7->sy_value).X_op_symbol;\n      goto LAB_000421c3;\n    }\n    fprintf((FILE *)file,"constant %lx",(int)(psVar7->sy_value).X_add_number,puVar9);\n  }" else (compound_statement "{\n    if ((segT)psVar7->bsym == reg_section) {\n      psVar7 = (psVar7->sy_value).X_op_symbol;\n      goto LAB_000421c3;\n    }\n    fprintf((FILE *)file,"constant %lx",(int)(psVar7->sy_value).X_add_number,puVar9);\n  }" { (if_statement "if ((segT)psVar7->bsym == reg_section) {\n      psVar7 = (psVar7->sy_value).X_op_symbol;\n      goto LAB_000421c3;\n    }" if (parenthesized_expression "((segT)psVar7->bsym == reg_section)" ( (binary_expression "(segT)psVar7->bsym == reg_section" (cast_expression "(segT)psVar7->bsym" ( (type_descriptor "segT" type_identifier) ) (field_expression "psVar7->bsym" identifier -> field_identifier)) == identifier) )) (compound_statement "{\n      psVar7 = (psVar7->sy_value).X_op_symbol;\n      goto LAB_000421c3;\n    }" { (expression_statement "psVar7 = (psVar7->sy_value).X_op_symbol;" (assignment_expression "psVar7 = (psVar7->sy_value).X_op_symbol" identifier = (field_expression "(psVar7->sy_value).X_op_symbol" (parenthesized_expression "(psVar7->sy_value)" ( (field_expression "psVar7->sy_value" identifier -> field_identifier) )) . field_identifier)) ;) (goto_statement "goto LAB_000421c3;" goto statement_identifier ;) })) (expression_statement "fprintf((FILE *)file,"constant %lx",(int)(psVar7->sy_value).X_add_number,puVar9);" (call_expression "fprintf((FILE *)file,"constant %lx",(int)(psVar7->sy_value).X_add_number,puVar9)" identifier (argument_list "((FILE *)file,"constant %lx",(int)(psVar7->sy_value).X_add_number,puVar9)" ( (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""constant %lx"" " string_content ") , (cast_expression "(int)(psVar7->sy_value).X_add_number" ( (type_descriptor "int" primitive_type) ) (field_expression "(psVar7->sy_value).X_add_number" (parenthesized_expression "(psVar7->sy_value)" ( (field_expression "psVar7->sy_value" identifier -> field_identifier) )) . field_identifier)) , identifier ))) ;) }))) (expression_statement "fputc(0x3e,(FILE *)file);" (call_expression "fputc(0x3e,(FILE *)file)" identifier (argument_list "(0x3e,(FILE *)file)" ( number_literal , (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;) (expression_statement "indent_level = indent_level + -1;" (assignment_expression "indent_level = indent_level + -1" identifier = (binary_expression "indent_level + -1" identifier + number_literal)) ;) (labeled_statement "LAB_00041e47:\n  fflush((FILE *)file);" statement_identifier : (expression_statement "fflush((FILE *)file);" (call_expression "fflush((FILE *)file)" identifier (argument_list "((FILE *)file)" ( (cast_expression "(FILE *)file" ( (type_descriptor "FILE *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier) ))) ;)) (return_statement "return;" return ;) })))
(translation_unit "void FUN_00041bd0(FILE *param_1,byte *param_2)\n\n{\n  byte bVar1;\n  int iVar2;\n  undefined4 *puVar3;\n  undefined4 uVar4;\n  byte *pbVar5;\n  byte *pbVar6;\n  char *pcVar7;\n  undefined *puVar8;\n  \n  puVar3 = *(undefined4 **)(param_2 + 4);\n  if ((*param_2 & 1) == 0) {\nLAB_00041c16:\n    pcVar7 = (char *)puVar3[1];\n    if (pcVar7 == (char *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }\n  }\n  else {\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }\n  fwrite(&DAT_0005bbc8,1,4,param_1);\n  fprintf(param_1,"%016llx",param_2,0);\n  fprintf(param_1," %s",pcVar7);\n  bVar1 = *param_2;\n  pbVar6 = param_2;\n  if (((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)) {\n    if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }\n    bVar1 = *pbVar6;\n    if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }\n  }\n  else {\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }\nLAB_00041dd8:\n  fprintf(param_1," %s",*puVar3);\n  bVar1 = *pbVar6;\n  if ((bVar1 & 1) == 0) {\n    pbVar5 = pbVar6;\n    if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n    iVar2 = *(int *)(pbVar6 + 4);\nLAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);\n  }\n  else {\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }\n  if (puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;\n  DAT_0008164c = DAT_0008164c + 1;\n  puVar8 = &DAT_00057aaa;\n  fprintf(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa);\n  if ((*pbVar6 & 1) == 0) {\nLAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);\n  }\n  else {\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }\n  fputc(0x3e,param_1);\n  DAT_0008164c = DAT_0008164c + -1;\nLAB_00041e47:\n  fflush(param_1);\n  return;\n}\n\n" (function_definition "void FUN_00041bd0(FILE *param_1,byte *param_2)\n\n{\n  byte bVar1;\n  int iVar2;\n  undefined4 *puVar3;\n  undefined4 uVar4;\n  byte *pbVar5;\n  byte *pbVar6;\n  char *pcVar7;\n  undefined *puVar8;\n  \n  puVar3 = *(undefined4 **)(param_2 + 4);\n  if ((*param_2 & 1) == 0) {\nLAB_00041c16:\n    pcVar7 = (char *)puVar3[1];\n    if (pcVar7 == (char *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }\n  }\n  else {\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }\n  fwrite(&DAT_0005bbc8,1,4,param_1);\n  fprintf(param_1,"%016llx",param_2,0);\n  fprintf(param_1," %s",pcVar7);\n  bVar1 = *param_2;\n  pbVar6 = param_2;\n  if (((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)) {\n    if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }\n    bVar1 = *pbVar6;\n    if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }\n  }\n  else {\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }\nLAB_00041dd8:\n  fprintf(param_1," %s",*puVar3);\n  bVar1 = *pbVar6;\n  if ((bVar1 & 1) == 0) {\n    pbVar5 = pbVar6;\n    if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n    iVar2 = *(int *)(pbVar6 + 4);\nLAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);\n  }\n  else {\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }\n  if (puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;\n  DAT_0008164c = DAT_0008164c + 1;\n  puVar8 = &DAT_00057aaa;\n  fprintf(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa);\n  if ((*pbVar6 & 1) == 0) {\nLAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);\n  }\n  else {\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }\n  fputc(0x3e,param_1);\n  DAT_0008164c = DAT_0008164c + -1;\nLAB_00041e47:\n  fflush(param_1);\n  return;\n}" primitive_type (function_declarator "FUN_00041bd0(FILE *param_1,byte *param_2)" identifier (parameter_list "(FILE *param_1,byte *param_2)" ( (parameter_declaration "FILE *param_1" type_identifier (pointer_declarator "*param_1" * identifier)) , (parameter_declaration "byte *param_2" type_identifier (pointer_declarator "*param_2" * identifier)) ))) (compound_statement "{\n  byte bVar1;\n  int iVar2;\n  undefined4 *puVar3;\n  undefined4 uVar4;\n  byte *pbVar5;\n  byte *pbVar6;\n  char *pcVar7;\n  undefined *puVar8;\n  \n  puVar3 = *(undefined4 **)(param_2 + 4);\n  if ((*param_2 & 1) == 0) {\nLAB_00041c16:\n    pcVar7 = (char *)puVar3[1];\n    if (pcVar7 == (char *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }\n  }\n  else {\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }\n  fwrite(&DAT_0005bbc8,1,4,param_1);\n  fprintf(param_1,"%016llx",param_2,0);\n  fprintf(param_1," %s",pcVar7);\n  bVar1 = *param_2;\n  pbVar6 = param_2;\n  if (((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)) {\n    if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }\n    bVar1 = *pbVar6;\n    if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }\n  }\n  else {\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }\nLAB_00041dd8:\n  fprintf(param_1," %s",*puVar3);\n  bVar1 = *pbVar6;\n  if ((bVar1 & 1) == 0) {\n    pbVar5 = pbVar6;\n    if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n    iVar2 = *(int *)(pbVar6 + 4);\nLAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);\n  }\n  else {\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }\n  if (puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;\n  DAT_0008164c = DAT_0008164c + 1;\n  puVar8 = &DAT_00057aaa;\n  fprintf(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa);\n  if ((*pbVar6 & 1) == 0) {\nLAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);\n  }\n  else {\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }\n  fputc(0x3e,param_1);\n  DAT_0008164c = DAT_0008164c + -1;\nLAB_00041e47:\n  fflush(param_1);\n  return;\n}" { (declaration "byte bVar1;" type_identifier identifier ;) (declaration "int iVar2;" primitive_type identifier ;) (declaration "undefined4 *puVar3;" type_identifier (pointer_declarator "*puVar3" * identifier) ;) (declaration "undefined4 uVar4;" type_identifier identifier ;) (declaration "byte *pbVar5;" type_identifier (pointer_declarator "*pbVar5" * identifier) ;) (declaration "byte *pbVar6;" type_identifier (pointer_declarator "*pbVar6" * identifier) ;) (declaration "char *pcVar7;" primitive_type (pointer_declarator "*pcVar7" * identifier) ;) (declaration "undefined *puVar8;" type_identifier (pointer_declarator "*puVar8" * identifier) ;) (expression_statement "puVar3 = *(undefined4 **)(param_2 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(param_2 + 4)" identifier = (pointer_expression "*(undefined4 **)(param_2 + 4)" * (cast_expression "(undefined4 **)(param_2 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) ))))) ;) (if_statement "if ((*param_2 & 1) == 0) {\nLAB_00041c16:\n    pcVar7 = (char *)puVar3[1];\n    if (pcVar7 == (char *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }\n  }\n  else {\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }" if (parenthesized_expression "((*param_2 & 1) == 0)" ( (binary_expression "(*param_2 & 1) == 0" (parenthesized_expression "(*param_2 & 1)" ( (binary_expression "*param_2 & 1" (pointer_expression "*param_2" * identifier) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_00041c16:\n    pcVar7 = (char *)puVar3[1];\n    if (pcVar7 == (char *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }\n  }" { (labeled_statement "LAB_00041c16:\n    pcVar7 = (char *)puVar3[1];" statement_identifier : (expression_statement "pcVar7 = (char *)puVar3[1];" (assignment_expression "pcVar7 = (char *)puVar3[1]" identifier = (cast_expression "(char *)puVar3[1]" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar3[1]" identifier [ number_literal ]))) ;)) (if_statement "if (pcVar7 == (char *)0x0) goto LAB_00041c03;" if (parenthesized_expression "(pcVar7 == (char *)0x0)" ( (binary_expression "pcVar7 == (char *)0x0" identifier == (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00041c03;" goto statement_identifier ;)) (labeled_statement "LAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }" statement_identifier : (if_statement "if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }" if (parenthesized_expression "(*pcVar7 == '\0')" ( (binary_expression "*pcVar7 == '\0'" (pointer_expression "*pcVar7" * identifier) == (char_literal "'\0'" ' escape_sequence ')) )) (compound_statement "{\n      pcVar7 = "(unnamed)";\n    }" { (expression_statement "pcVar7 = "(unnamed)";" (assignment_expression "pcVar7 = "(unnamed)"" identifier = (string_literal ""(unnamed)"" " string_content ")) ;) }))) }) (else_clause "else {\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }" else (compound_statement "{\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }" { (if_statement "if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }" if (parenthesized_expression "(DAT_00081410 == puVar3)" ( (binary_expression "DAT_00081410 == puVar3" identifier == identifier) )) (compound_statement "{\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }" { (expression_statement "puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);" (assignment_expression "puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" identifier = (pointer_expression "*(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" * (cast_expression "(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(param_2 + 0xc) + 4)" ( (binary_expression "*(int *)(param_2 + 0xc) + 4" (pointer_expression "*(int *)(param_2 + 0xc)" * (cast_expression "(int *)(param_2 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) )))) + number_literal) ))))) ;) (goto_statement "goto LAB_00041c16;" goto statement_identifier ;) })) (expression_statement "pcVar7 = *(char **)(param_2 + 8);" (assignment_expression "pcVar7 = *(char **)(param_2 + 8)" identifier = (pointer_expression "*(char **)(param_2 + 8)" * (cast_expression "(char **)(param_2 + 8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 8)" ( (binary_expression "param_2 + 8" identifier + number_literal) ))))) ;) (if_statement "if (pcVar7 != (char *)0x0) goto LAB_00041c1d;" if (parenthesized_expression "(pcVar7 != (char *)0x0)" ( (binary_expression "pcVar7 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (goto_statement "goto LAB_00041c1d;" goto statement_identifier ;)) (labeled_statement "LAB_00041c03:\n    pcVar7 = "(unnamed)";" statement_identifier : (expression_statement "pcVar7 = "(unnamed)";" (assignment_expression "pcVar7 = "(unnamed)"" identifier = (string_literal ""(unnamed)"" " string_content ")) ;)) }))) (expression_statement "fwrite(&DAT_0005bbc8,1,4,param_1);" (call_expression "fwrite(&DAT_0005bbc8,1,4,param_1)" identifier (argument_list "(&DAT_0005bbc8,1,4,param_1)" ( (pointer_expression "&DAT_0005bbc8" & identifier) , number_literal , number_literal , identifier ))) ;) (expression_statement "fprintf(param_1,"%016llx",param_2,0);" (call_expression "fprintf(param_1,"%016llx",param_2,0)" identifier (argument_list "(param_1,"%016llx",param_2,0)" ( identifier , (string_literal ""%016llx"" " string_content ") , identifier , number_literal ))) ;) (expression_statement "fprintf(param_1," %s",pcVar7);" (call_expression "fprintf(param_1," %s",pcVar7)" identifier (argument_list "(param_1," %s",pcVar7)" ( identifier , (string_literal "" %s"" " string_content ") , identifier ))) ;) (expression_statement "bVar1 = *param_2;" (assignment_expression "bVar1 = *param_2" identifier = (pointer_expression "*param_2" * identifier)) ;) (expression_statement "pbVar6 = param_2;" (assignment_expression "pbVar6 = param_2" identifier = identifier) ;) (if_statement "if (((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)) {\n    if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }\n    bVar1 = *pbVar6;\n    if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }\n  }\n  else {\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }" if (parenthesized_expression "(((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410))" ( (binary_expression "((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)" (parenthesized_expression "((bVar1 & 1) == 0)" ( (binary_expression "(bVar1 & 1) == 0" (parenthesized_expression "(bVar1 & 1)" ( (binary_expression "bVar1 & 1" identifier & number_literal) )) == number_literal) )) || (parenthesized_expression "(pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)" ( (comma_expression "pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410" (assignment_expression "pbVar6 = *(byte **)(param_2 + 0xc)" identifier = (pointer_expression "*(byte **)(param_2 + 0xc)" * (cast_expression "(byte **)(param_2 + 0xc)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) ))))) , (binary_expression "*(undefined4 **)(param_2 + 4) == DAT_00081410" (pointer_expression "*(undefined4 **)(param_2 + 4)" * (cast_expression "(undefined4 **)(param_2 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(param_2 + 4)" ( (binary_expression "param_2 + 4" identifier + number_literal) )))) == identifier)) ))) )) (compound_statement "{\n    if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }\n    bVar1 = *pbVar6;\n    if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }\n  }" { (if_statement "if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }" if (parenthesized_expression "(*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0)" ( (binary_expression "*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0" (pointer_expression "*(undefined4 **)(pbVar6 + 0x24)" * (cast_expression "(undefined4 **)(pbVar6 + 0x24)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 0x24)" ( (binary_expression "pbVar6 + 0x24" identifier + number_literal) )))) != (pointer_expression "&DAT_000813a0" & identifier)) )) (compound_statement "{\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }" { (expression_statement "fwrite(" frag ",1,6,param_1);" (call_expression "fwrite(" frag ",1,6,param_1)" identifier (argument_list "(" frag ",1,6,param_1)" ( (string_literal "" frag "" " string_content ") , number_literal , number_literal , identifier ))) ;) (expression_statement "fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);" (call_expression "fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0)" identifier (argument_list "(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0)" ( identifier , (string_literal ""%016llx"" " string_content ") , (pointer_expression "*(undefined4 *)(pbVar6 + 0x24)" * (cast_expression "(undefined4 *)(pbVar6 + 0x24)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar6 + 0x24)" ( (binary_expression "pbVar6 + 0x24" identifier + number_literal) )))) , number_literal ))) ;) })) (expression_statement "bVar1 = *pbVar6;" (assignment_expression "bVar1 = *pbVar6" identifier = (pointer_expression "*pbVar6" * identifier)) ;) (if_statement "if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }" if (parenthesized_expression "((bVar1 & 2) != 0)" ( (binary_expression "(bVar1 & 2) != 0" (parenthesized_expression "(bVar1 & 2)" ( (binary_expression "bVar1 & 2" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }" { (expression_statement "fwrite(" written",1,8,param_1);" (call_expression "fwrite(" written",1,8,param_1)" identifier (argument_list "(" written",1,8,param_1)" ( (string_literal "" written"" " string_content ") , number_literal , number_literal , identifier ))) ;) (expression_statement "bVar1 = *pbVar6;" (assignment_expression "bVar1 = *pbVar6" identifier = (pointer_expression "*pbVar6" * identifier)) ;) })) (if_statement "if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }" if (parenthesized_expression "((bVar1 & 4) == 0)" ( (binary_expression "(bVar1 & 4) == 0" (parenthesized_expression "(bVar1 & 4)" ( (binary_expression "bVar1 & 4" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }" { (if_statement "if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }" if (parenthesized_expression "((bVar1 & 8) != 0)" ( (binary_expression "(bVar1 & 8) != 0" (parenthesized_expression "(bVar1 & 8)" ( (binary_expression "bVar1 & 8" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }" { (expression_statement "fwrite(" resolving",1,10,param_1);" (call_expression "fwrite(" resolving",1,10,param_1)" identifier (argument_list "(" resolving",1,10,param_1)" ( (string_literal "" resolving"" " string_content ") , number_literal , number_literal , identifier ))) ;) (expression_statement "bVar1 = *pbVar6;" (assignment_expression "bVar1 = *pbVar6" identifier = (pointer_expression "*pbVar6" * identifier)) ;) })) }) (else_clause "else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }" else (compound_statement "{\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }" { (expression_statement "fwrite(" resolved",1,9,param_1);" (call_expression "fwrite(" resolved",1,9,param_1)" identifier (argument_list "(" resolved",1,9,param_1)" ( (string_literal "" resolved"" " string_content ") , number_literal , number_literal , identifier ))) ;) (expression_statement "bVar1 = *pbVar6;" (assignment_expression "bVar1 = *pbVar6" identifier = (pointer_expression "*pbVar6" * identifier)) ;) }))) (if_statement "if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }" if (parenthesized_expression "((bVar1 & 0x10) == 0)" ( (binary_expression "(bVar1 & 0x10) == 0" (parenthesized_expression "(bVar1 & 0x10)" ( (binary_expression "bVar1 & 0x10" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }" { (if_statement "if ((bVar1 & 0x20) == 0) goto LAB_00041d55;" if (parenthesized_expression "((bVar1 & 0x20) == 0)" ( (binary_expression "(bVar1 & 0x20) == 0" (parenthesized_expression "(bVar1 & 0x20)" ( (binary_expression "bVar1 & 0x20" identifier & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00041d55;" goto statement_identifier ;)) (labeled_statement "LAB_00041eef:\n      fwrite(" used",1,5,param_1);" statement_identifier : (expression_statement "fwrite(" used",1,5,param_1);" (call_expression "fwrite(" used",1,5,param_1)" identifier (argument_list "(" used",1,5,param_1)" ( (string_literal "" used"" " string_content ") , number_literal , number_literal , identifier ))) ;)) (expression_statement "iVar2 = FUN_0003df00(pbVar6);" (assignment_expression "iVar2 = FUN_0003df00(pbVar6)" identifier = (call_expression "FUN_0003df00(pbVar6)" identifier (argument_list "(pbVar6)" ( identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_00041f17;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00041f17;" goto statement_identifier ;)) (labeled_statement "LAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);" statement_identifier : (expression_statement "iVar2 = FUN_0003dc20(pbVar6);" (assignment_expression "iVar2 = FUN_0003dc20(pbVar6)" identifier = (call_expression "FUN_0003dc20(pbVar6)" identifier (argument_list "(pbVar6)" ( identifier )))) ;)) (if_statement "if (iVar2 == 0) goto LAB_00041d7d;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00041d7d;" goto statement_identifier ;)) (labeled_statement "LAB_00041f3f:\n      fwrite(" extern",1,7,param_1);" statement_identifier : (expression_statement "fwrite(" extern",1,7,param_1);" (call_expression "fwrite(" extern",1,7,param_1)" identifier (argument_list "(" extern",1,7,param_1)" ( (string_literal "" extern"" " string_content ") , number_literal , number_literal , identifier ))) ;)) (expression_statement "iVar2 = FUN_0003dc90(pbVar6);" (assignment_expression "iVar2 = FUN_0003dc90(pbVar6)" identifier = (call_expression "FUN_0003dc90(pbVar6)" identifier (argument_list "(pbVar6)" ( identifier )))) ;) }) (else_clause "else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }" else (compound_statement "{\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }" { (expression_statement "fwrite(" used-in-reloc",1,0xe,param_1);" (call_expression "fwrite(" used-in-reloc",1,0xe,param_1)" identifier (argument_list "(" used-in-reloc",1,0xe,param_1)" ( (string_literal "" used-in-reloc"" " string_content ") , number_literal , number_literal , identifier ))) ;) (if_statement "if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;" if (parenthesized_expression "((*pbVar6 & 0x20) != 0)" ( (binary_expression "(*pbVar6 & 0x20) != 0" (parenthesized_expression "(*pbVar6 & 0x20)" ( (binary_expression "*pbVar6 & 0x20" (pointer_expression "*pbVar6" * identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00041eef;" goto statement_identifier ;)) (labeled_statement "LAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);" statement_identifier : (expression_statement "iVar2 = FUN_0003df00(pbVar6);" (assignment_expression "iVar2 = FUN_0003df00(pbVar6)" identifier = (call_expression "FUN_0003df00(pbVar6)" identifier (argument_list "(pbVar6)" ( identifier )))) ;)) (if_statement "if (iVar2 == 0) goto LAB_00041d69;" if (parenthesized_expression "(iVar2 == 0)" ( (binary_expression "iVar2 == 0" identifier == number_literal) )) (goto_statement "goto LAB_00041d69;" goto statement_identifier ;)) (labeled_statement "LAB_00041f17:\n      fwrite(" local",1,6,param_1);" statement_identifier : (expression_statement "fwrite(" local",1,6,param_1);" (call_expression "fwrite(" local",1,6,param_1)" identifier (argument_list "(" local",1,6,param_1)" ( (string_literal "" local"" " string_content ") , number_literal , number_literal , identifier ))) ;)) (expression_statement "iVar2 = FUN_0003dc20(pbVar6);" (assignment_expression "iVar2 = FUN_0003dc20(pbVar6)" identifier = (call_expression "FUN_0003dc20(pbVar6)" identifier (argument_list "(pbVar6)" ( identifier )))) ;) (if_statement "if (iVar2 != 0) goto LAB_00041f3f;" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00041f3f;" goto statement_identifier ;)) (labeled_statement "LAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);" statement_identifier : (expression_statement "iVar2 = FUN_0003dc90(pbVar6);" (assignment_expression "iVar2 = FUN_0003dc90(pbVar6)" identifier = (call_expression "FUN_0003dc90(pbVar6)" identifier (argument_list "(pbVar6)" ( identifier )))) ;)) }))) (if_statement "if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }" if (parenthesized_expression "(iVar2 != 0)" ( (binary_expression "iVar2 != 0" identifier != number_literal) )) (compound_statement "{\n      fwrite(" weak",1,5,param_1);\n    }" { (expression_statement "fwrite(" weak",1,5,param_1);" (call_expression "fwrite(" weak",1,5,param_1)" identifier (argument_list "(" weak",1,5,param_1)" ( (string_literal "" weak"" " string_content ") , number_literal , number_literal , identifier ))) ;) })) (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" identifier = (pointer_expression "*(undefined4 **)(pbVar6 + 4)" * (cast_expression "(undefined4 **)(pbVar6 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 4)" ( (binary_expression "pbVar6 + 4" identifier + number_literal) ))))) ;) (if_statement "if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }" if (parenthesized_expression "((*pbVar6 & 1) == 0)" ( (binary_expression "(*pbVar6 & 1) == 0" (parenthesized_expression "(*pbVar6 & 1)" ( (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" * identifier) & number_literal) )) == number_literal) )) (compound_statement "{\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }" { (if_statement "if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }" if (parenthesized_expression "((*(byte *)(puVar3 + 4) & 4) != 0)" ( (binary_expression "(*(byte *)(puVar3 + 4) & 4) != 0" (parenthesized_expression "(*(byte *)(puVar3 + 4) & 4)" ( (binary_expression "*(byte *)(puVar3 + 4) & 4" (pointer_expression "*(byte *)(puVar3 + 4)" * (cast_expression "(byte *)(puVar3 + 4)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(puVar3 + 4)" ( (binary_expression "puVar3 + 4" identifier + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }" { (labeled_statement "LAB_00042130:\n        fwrite(" debug",1,6,param_1);" statement_identifier : (expression_statement "fwrite(" debug",1,6,param_1);" (call_expression "fwrite(" debug",1,6,param_1)" identifier (argument_list "(" debug",1,6,param_1)" ( (string_literal "" debug"" " string_content ") , number_literal , number_literal , identifier ))) ;)) (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" identifier = (pointer_expression "*(undefined4 **)(pbVar6 + 4)" * (cast_expression "(undefined4 **)(pbVar6 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 4)" ( (binary_expression "pbVar6 + 4" identifier + number_literal) ))))) ;) (if_statement "if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }" if (parenthesized_expression "((*pbVar6 & 1) != 0)" ( (binary_expression "(*pbVar6 & 1) != 0" (parenthesized_expression "(*pbVar6 & 1)" ( (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }" { (if_statement "if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }" if (parenthesized_expression "(puVar3 == DAT_00081410)" ( (binary_expression "puVar3 == DAT_00081410" identifier == identifier) )) (compound_statement "{\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }" { (expression_statement "iVar2 = *(int *)(pbVar6 + 0xc);" (assignment_expression "iVar2 = *(int *)(pbVar6 + 0xc)" identifier = (pointer_expression "*(int *)(pbVar6 + 0xc)" * (cast_expression "(int *)(pbVar6 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar6 + 0xc)" ( (binary_expression "pbVar6 + 0xc" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_0004219c;" goto statement_identifier ;) })) (goto_statement "goto LAB_00041e70;" goto statement_identifier ;) })) })) (if_statement "if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;" if (parenthesized_expression "((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0)" ( (binary_expression "(undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0" (cast_expression "(undefined *)puVar3[5]" ( (type_descriptor "undefined *" type_identifier (abstract_pointer_declarator "*" *)) ) (subscript_expression "puVar3[5]" identifier [ number_literal ])) != (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" identifier + number_literal)) )) (goto_statement "goto LAB_00041e84;" goto statement_identifier ;)) (goto_statement "goto LAB_00041dbc;" goto statement_identifier ;) })) (if_statement "if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }" if (parenthesized_expression "(DAT_00081410 == puVar3)" ( (binary_expression "DAT_00081410 == puVar3" identifier == identifier) )) (compound_statement "{\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }" { (expression_statement "iVar2 = *(int *)(pbVar6 + 0xc);" (assignment_expression "iVar2 = *(int *)(pbVar6 + 0xc)" identifier = (pointer_expression "*(int *)(pbVar6 + 0xc)" * (cast_expression "(int *)(pbVar6 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar6 + 0xc)" ( (binary_expression "pbVar6 + 0xc" identifier + number_literal) ))))) ;) (if_statement "if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;" if (parenthesized_expression "((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0)" ( (binary_expression "(*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0" (parenthesized_expression "(*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4)" ( (binary_expression "*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4" (pointer_expression "*(byte *)(*(int *)(iVar2 + 4) + 0x10)" * (cast_expression "(byte *)(*(int *)(iVar2 + 4) + 0x10)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(iVar2 + 4) + 0x10)" ( (binary_expression "*(int *)(iVar2 + 4) + 0x10" (pointer_expression "*(int *)(iVar2 + 4)" * (cast_expression "(int *)(iVar2 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 4)" ( (binary_expression "iVar2 + 4" identifier + number_literal) )))) + number_literal) )))) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00042130;" goto statement_identifier ;)) (labeled_statement "LAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;" statement_identifier : (if_statement "if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;" if (parenthesized_expression "(*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)" ( (binary_expression "*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0" (pointer_expression "*(undefined **)(*(int *)(iVar2 + 4) + 0x14)" * (cast_expression "(undefined **)(*(int *)(iVar2 + 4) + 0x14)" ( (type_descriptor "undefined **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(iVar2 + 4) + 0x14)" ( (binary_expression "*(int *)(iVar2 + 4) + 0x14" (pointer_expression "*(int *)(iVar2 + 4)" * (cast_expression "(int *)(iVar2 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(iVar2 + 4)" ( (binary_expression "iVar2 + 4" identifier + number_literal) )))) + number_literal) )))) == (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" identifier + number_literal)) )) (goto_statement "goto LAB_00041cce;" goto statement_identifier ;))) (labeled_statement "LAB_00041e84:\n      fwrite(" defined",1,8,param_1);" statement_identifier : (expression_statement "fwrite(" defined",1,8,param_1);" (call_expression "fwrite(" defined",1,8,param_1)" identifier (argument_list "(" defined",1,8,param_1)" ( (string_literal "" defined"" " string_content ") , number_literal , number_literal , identifier ))) ;)) (goto_statement "goto LAB_00041cce;" goto statement_identifier ;) })) (labeled_statement "LAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;" statement_identifier : (if_statement "if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;" if (parenthesized_expression "(puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0))" ( (binary_expression "puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" identifier != (cast_expression "(undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" identifier + number_literal) )))) )) (goto_statement "goto LAB_00041e84;" goto statement_identifier ;))) (labeled_statement "LAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }" statement_identifier : (if_statement "if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }" if (parenthesized_expression "(DAT_00081410 == puVar3)" ( (binary_expression "DAT_00081410 == puVar3" identifier == identifier) )) (compound_statement "{\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }" { (if_statement "if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }" if (parenthesized_expression "((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0)" ( (binary_expression "(*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0" (parenthesized_expression "(*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2)" ( (binary_expression "*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2" (pointer_expression "*(byte *)(*(int *)(pbVar6 + 0xc) + 1)" * (cast_expression "(byte *)(*(int *)(pbVar6 + 0xc) + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pbVar6 + 0xc) + 1)" ( (binary_expression "*(int *)(pbVar6 + 0xc) + 1" (pointer_expression "*(int *)(pbVar6 + 0xc)" * (cast_expression "(int *)(pbVar6 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar6 + 0xc)" ( (binary_expression "pbVar6 + 0xc" identifier + number_literal) )))) + number_literal) )))) & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }" { (labeled_statement "LAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);" statement_identifier : (expression_statement "fwrite(" weakrefr",1,9,param_1);" (call_expression "fwrite(" weakrefr",1,9,param_1)" identifier (argument_list "(" weakrefr",1,9,param_1)" ( (string_literal "" weakrefr"" " string_content ") , number_literal , number_literal , identifier ))) ;)) (if_statement "if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;" if (parenthesized_expression "((*pbVar6 & 1) == 0)" ( (binary_expression "(*pbVar6 & 1) == 0" (parenthesized_expression "(*pbVar6 & 1)" ( (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" * identifier) & number_literal) )) == number_literal) )) (goto_statement "goto LAB_00041dc6;" goto statement_identifier ;)) (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" identifier = (pointer_expression "*(undefined4 **)(pbVar6 + 4)" * (cast_expression "(undefined4 **)(pbVar6 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 4)" ( (binary_expression "pbVar6 + 4" identifier + number_literal) ))))) ;) (if_statement "if (DAT_00081410 != puVar3) goto LAB_00041dd8;" if (parenthesized_expression "(DAT_00081410 != puVar3)" ( (binary_expression "DAT_00081410 != puVar3" identifier != identifier) )) (goto_statement "goto LAB_00041dd8;" goto statement_identifier ;)) })) (if_statement "if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;" if (parenthesized_expression "((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0)" ( (binary_expression "(*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0" (parenthesized_expression "(*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4)" ( (binary_expression "*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4" (pointer_expression "*(byte *)(*(int *)(pbVar6 + 0xc) + 1)" * (cast_expression "(byte *)(*(int *)(pbVar6 + 0xc) + 1)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(*(int *)(pbVar6 + 0xc) + 1)" ( (binary_expression "*(int *)(pbVar6 + 0xc) + 1" (pointer_expression "*(int *)(pbVar6 + 0xc)" * (cast_expression "(int *)(pbVar6 + 0xc)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar6 + 0xc)" ( (binary_expression "pbVar6 + 0xc" identifier + number_literal) )))) + number_literal) )))) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00041ff8;" goto statement_identifier ;)) (labeled_statement "LAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);" statement_identifier : (expression_statement "pbVar5 = *(byte **)(pbVar6 + 0xc);" (assignment_expression "pbVar5 = *(byte **)(pbVar6 + 0xc)" identifier = (pointer_expression "*(byte **)(pbVar6 + 0xc)" * (cast_expression "(byte **)(pbVar6 + 0xc)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 0xc)" ( (binary_expression "pbVar6 + 0xc" identifier + number_literal) ))))) ;)) (goto_statement "goto LAB_00041dd2;" goto statement_identifier ;) }))) }) (else_clause "else {\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }" else (compound_statement "{\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }" { (if_statement "if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }" if (parenthesized_expression "((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60))" ( (binary_expression "(pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)" (parenthesized_expression "(pbVar6 != (byte *)0x0)" ( (binary_expression "pbVar6 != (byte *)0x0" identifier != (cast_expression "(byte *)0x0" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) )) && (parenthesized_expression "(pbVar6 != PTR_DAT_00077f60)" ( (binary_expression "pbVar6 != PTR_DAT_00077f60" identifier != identifier) ))) )) (compound_statement "{\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }" { (expression_statement "fwrite(" frag ",1,6,param_1);" (call_expression "fwrite(" frag ",1,6,param_1)" identifier (argument_list "(" frag ",1,6,param_1)" ( (string_literal "" frag "" " string_content ") , number_literal , number_literal , identifier ))) ;) (expression_statement "fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);" (call_expression "fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0)" identifier (argument_list "(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0)" ( identifier , (string_literal ""%016llx"" " string_content ") , (pointer_expression "*(undefined4 *)(param_2 + 0xc)" * (cast_expression "(undefined4 *)(param_2 + 0xc)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(param_2 + 0xc)" ( (binary_expression "param_2 + 0xc" identifier + number_literal) )))) , number_literal ))) ;) (expression_statement "bVar1 = *param_2;" (assignment_expression "bVar1 = *param_2" identifier = (pointer_expression "*param_2" * identifier)) ;) })) (if_statement "if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }" if (parenthesized_expression "((bVar1 & 4) != 0)" ( (binary_expression "(bVar1 & 4) != 0" (parenthesized_expression "(bVar1 & 4)" ( (binary_expression "bVar1 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\n      fwrite(" resolved",1,9,param_1);\n    }" { (expression_statement "fwrite(" resolved",1,9,param_1);" (call_expression "fwrite(" resolved",1,9,param_1)" identifier (argument_list "(" resolved",1,9,param_1)" ( (string_literal "" resolved"" " string_content ") , number_literal , number_literal , identifier ))) ;) })) (expression_statement "fwrite(" local",1,6,param_1);" (call_expression "fwrite(" local",1,6,param_1)" identifier (argument_list "(" local",1,6,param_1)" ( (string_literal "" local"" " string_content ") , number_literal , number_literal , identifier ))) ;) (expression_statement "pbVar6 = param_2;" (assignment_expression "pbVar6 = param_2" identifier = identifier) ;) (labeled_statement "LAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }" statement_identifier : (if_statement "if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }" if (parenthesized_expression "((*pbVar6 & 1) != 0)" ( (binary_expression "(*pbVar6 & 1) != 0" (parenthesized_expression "(*pbVar6 & 1)" ( (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }" { (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" identifier = (pointer_expression "*(undefined4 **)(pbVar6 + 4)" * (cast_expression "(undefined4 **)(pbVar6 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 4)" ( (binary_expression "pbVar6 + 4" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_00041ce2;" goto statement_identifier ;) }))) (labeled_statement "LAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;" statement_identifier : (if_statement "if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;" if (parenthesized_expression "((pbVar6[1] & 2) != 0)" ( (binary_expression "(pbVar6[1] & 2) != 0" (parenthesized_expression "(pbVar6[1] & 2)" ( (binary_expression "pbVar6[1] & 2" (subscript_expression "pbVar6[1]" identifier [ number_literal ]) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00041fc0;" goto statement_identifier ;))) (labeled_statement "LAB_00041dc6:\n    pbVar5 = pbVar6;" statement_identifier : (expression_statement "pbVar5 = pbVar6;" (assignment_expression "pbVar5 = pbVar6" identifier = identifier) ;)) (if_statement "if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }" if (parenthesized_expression "((pbVar6[1] & 4) != 0)" ( (binary_expression "(pbVar6[1] & 4) != 0" (parenthesized_expression "(pbVar6[1] & 4)" ( (binary_expression "pbVar6[1] & 4" (subscript_expression "pbVar6[1]" identifier [ number_literal ]) & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }" { (labeled_statement "LAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);" statement_identifier : (expression_statement "fwrite(" weakrefd",1,9,param_1);" (call_expression "fwrite(" weakrefd",1,9,param_1)" identifier (argument_list "(" weakrefd",1,9,param_1)" ( (string_literal "" weakrefd"" " string_content ") , number_literal , number_literal , identifier ))) ;)) (expression_statement "pbVar5 = pbVar6;" (assignment_expression "pbVar5 = pbVar6" identifier = identifier) ;) (if_statement "if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }" if (parenthesized_expression "((*pbVar6 & 1) != 0)" ( (binary_expression "(*pbVar6 & 1) != 0" (parenthesized_expression "(*pbVar6 & 1)" ( (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" * identifier) & number_literal) )) != number_literal) )) (compound_statement "{\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }" { (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" identifier = (pointer_expression "*(undefined4 **)(pbVar6 + 4)" * (cast_expression "(undefined4 **)(pbVar6 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 4)" ( (binary_expression "pbVar6 + 4" identifier + number_literal) ))))) ;) (if_statement "if (DAT_00081410 == puVar3) goto LAB_00042102;" if (parenthesized_expression "(DAT_00081410 == puVar3)" ( (binary_expression "DAT_00081410 == puVar3" identifier == identifier) )) (goto_statement "goto LAB_00042102;" goto statement_identifier ;)) (goto_statement "goto LAB_00041dd8;" goto statement_identifier ;) })) })) (labeled_statement "LAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);" statement_identifier : (expression_statement "puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);" (assignment_expression "puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" identifier = (pointer_expression "*(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" * (cast_expression "(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(pbVar5 + 4) + 0x14)" ( (binary_expression "*(int *)(pbVar5 + 4) + 0x14" (pointer_expression "*(int *)(pbVar5 + 4)" * (cast_expression "(int *)(pbVar5 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar5 + 4)" ( (binary_expression "pbVar5 + 4" identifier + number_literal) )))) + number_literal) ))))) ;)) }))) (labeled_statement "LAB_00041dd8:\n  fprintf(param_1," %s",*puVar3);" statement_identifier : (expression_statement "fprintf(param_1," %s",*puVar3);" (call_expression "fprintf(param_1," %s",*puVar3)" identifier (argument_list "(param_1," %s",*puVar3)" ( identifier , (string_literal "" %s"" " string_content ") , (pointer_expression "*puVar3" * identifier) ))) ;)) (expression_statement "bVar1 = *pbVar6;" (assignment_expression "bVar1 = *pbVar6" identifier = (pointer_expression "*pbVar6" * identifier)) ;) (if_statement "if ((bVar1 & 1) == 0) {\n    pbVar5 = pbVar6;\n    if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n    iVar2 = *(int *)(pbVar6 + 4);\nLAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);\n  }\n  else {\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }" if (parenthesized_expression "((bVar1 & 1) == 0)" ( (binary_expression "(bVar1 & 1) == 0" (parenthesized_expression "(bVar1 & 1)" ( (binary_expression "bVar1 & 1" identifier & number_literal) )) == number_literal) )) (compound_statement "{\n    pbVar5 = pbVar6;\n    if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n    iVar2 = *(int *)(pbVar6 + 4);\nLAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);\n  }" { (expression_statement "pbVar5 = pbVar6;" (assignment_expression "pbVar5 = pbVar6" identifier = identifier) ;) (if_statement "if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }" if (parenthesized_expression "((bVar1 & 4) != 0)" ( (binary_expression "(bVar1 & 4) != 0" (parenthesized_expression "(bVar1 & 4)" ( (binary_expression "bVar1 & 4" identifier & number_literal) )) != number_literal) )) (compound_statement "{\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }" { (labeled_statement "LAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);" statement_identifier : (expression_statement "puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);" (assignment_expression "puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" identifier = (pointer_expression "*(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" * (cast_expression "(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(int *)(pbVar5 + 4) + 0x14)" ( (binary_expression "*(int *)(pbVar5 + 4) + 0x14" (pointer_expression "*(int *)(pbVar5 + 4)" * (cast_expression "(int *)(pbVar5 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar5 + 4)" ( (binary_expression "pbVar5 + 4" identifier + number_literal) )))) + number_literal) ))))) ;)) (labeled_statement "LAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }" statement_identifier : (if_statement "if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }" if (parenthesized_expression "((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3))" ( (binary_expression "(puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)" (parenthesized_expression "(puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0))" ( (binary_expression "puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" identifier != (cast_expression "(undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" identifier + number_literal) )))) )) && (parenthesized_expression "(DAT_00081360 != puVar3)" ( (binary_expression "DAT_00081360 != puVar3" identifier != identifier) ))) )) (compound_statement "{\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }" { (expression_statement "uVar4 = FUN_0003f930();" (assignment_expression "uVar4 = FUN_0003f930()" identifier = (call_expression "FUN_0003f930()" identifier (argument_list "()" ( )))) ;) (expression_statement "fprintf(param_1," %lx",uVar4);" (call_expression "fprintf(param_1," %lx",uVar4)" identifier (argument_list "(param_1," %lx",uVar4)" ( identifier , (string_literal "" %lx"" " string_content ") , identifier ))) ;) }))) (goto_statement "goto LAB_00041e47;" goto statement_identifier ;) })) (if_statement "if (7 < DAT_0008164c) goto LAB_00041e47;" if (parenthesized_expression "(7 < DAT_0008164c)" ( (binary_expression "7 < DAT_0008164c" number_literal < identifier) )) (goto_statement "goto LAB_00041e47;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(pbVar6 + 4);" (assignment_expression "iVar2 = *(int *)(pbVar6 + 4)" identifier = (pointer_expression "*(int *)(pbVar6 + 4)" * (cast_expression "(int *)(pbVar6 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar6 + 4)" ( (binary_expression "pbVar6 + 4" identifier + number_literal) ))))) ;) (labeled_statement "LAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);" statement_identifier : (expression_statement "puVar3 = *(undefined4 **)(iVar2 + 0x14);" (assignment_expression "puVar3 = *(undefined4 **)(iVar2 + 0x14)" identifier = (pointer_expression "*(undefined4 **)(iVar2 + 0x14)" * (cast_expression "(undefined4 **)(iVar2 + 0x14)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(iVar2 + 0x14)" ( (binary_expression "iVar2 + 0x14" identifier + number_literal) ))))) ;)) }) (else_clause "else {\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }" else (compound_statement "{\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }" { (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" identifier = (pointer_expression "*(undefined4 **)(pbVar6 + 4)" * (cast_expression "(undefined4 **)(pbVar6 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 4)" ( (binary_expression "pbVar6 + 4" identifier + number_literal) ))))) ;) (if_statement "if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }" if (parenthesized_expression "(puVar3 == DAT_00081410)" ( (binary_expression "puVar3 == DAT_00081410" identifier == identifier) )) (compound_statement "{\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }" { (expression_statement "pbVar5 = *(byte **)(pbVar6 + 0xc);" (assignment_expression "pbVar5 = *(byte **)(pbVar6 + 0xc)" identifier = (pointer_expression "*(byte **)(pbVar6 + 0xc)" * (cast_expression "(byte **)(pbVar6 + 0xc)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 0xc)" ( (binary_expression "pbVar6 + 0xc" identifier + number_literal) ))))) ;) (if_statement "if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;" if (parenthesized_expression "((*pbVar5 & 4) != 0)" ( (binary_expression "(*pbVar5 & 4) != 0" (parenthesized_expression "(*pbVar5 & 4)" ( (binary_expression "*pbVar5 & 4" (pointer_expression "*pbVar5" * identifier) & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00041ea6;" goto statement_identifier ;)) (if_statement "if (7 < DAT_0008164c) goto LAB_00041e47;" if (parenthesized_expression "(7 < DAT_0008164c)" ( (binary_expression "7 < DAT_0008164c" number_literal < identifier) )) (goto_statement "goto LAB_00041e47;" goto statement_identifier ;)) (expression_statement "iVar2 = *(int *)(pbVar5 + 4);" (assignment_expression "iVar2 = *(int *)(pbVar5 + 4)" identifier = (pointer_expression "*(int *)(pbVar5 + 4)" * (cast_expression "(int *)(pbVar5 + 4)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar5 + 4)" ( (binary_expression "pbVar5 + 4" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_00041ec8;" goto statement_identifier ;) })) (if_statement "if ((bVar1 & 4) != 0) goto LAB_00041e13;" if (parenthesized_expression "((bVar1 & 4) != 0)" ( (binary_expression "(bVar1 & 4) != 0" (parenthesized_expression "(bVar1 & 4)" ( (binary_expression "bVar1 & 4" identifier & number_literal) )) != number_literal) )) (goto_statement "goto LAB_00041e13;" goto statement_identifier ;)) (if_statement "if (7 < DAT_0008164c) goto LAB_00041e47;" if (parenthesized_expression "(7 < DAT_0008164c)" ( (binary_expression "7 < DAT_0008164c" number_literal < identifier) )) (goto_statement "goto LAB_00041e47;" goto statement_identifier ;)) }))) (if_statement "if (puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;" if (parenthesized_expression "(puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0))" ( (binary_expression "puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" identifier == (cast_expression "(undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(PTR__bfd_std_section_00077fa0 + 0xc0)" ( (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" identifier + number_literal) )))) )) (goto_statement "goto LAB_00041e47;" goto statement_identifier ;)) (expression_statement "DAT_0008164c = DAT_0008164c + 1;" (assignment_expression "DAT_0008164c = DAT_0008164c + 1" identifier = (binary_expression "DAT_0008164c + 1" identifier + number_literal)) ;) (expression_statement "puVar8 = &DAT_00057aaa;" (assignment_expression "puVar8 = &DAT_00057aaa" identifier = (pointer_expression "&DAT_00057aaa" & identifier)) ;) (expression_statement "fprintf(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa);" (call_expression "fprintf(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa)" identifier (argument_list "(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa)" ( identifier , (string_literal ""\n%*s<"" " escape_sequence string_content ") , (binary_expression "DAT_0008164c * 4" identifier * number_literal) , (pointer_expression "&DAT_00057aaa" & identifier) ))) ;) (if_statement "if ((*pbVar6 & 1) == 0) {\nLAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);\n  }\n  else {\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }" if (parenthesized_expression "((*pbVar6 & 1) == 0)" ( (binary_expression "(*pbVar6 & 1) == 0" (parenthesized_expression "(*pbVar6 & 1)" ( (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" * identifier) & number_literal) )) == number_literal) )) (compound_statement "{\nLAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);\n  }" { (labeled_statement "LAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);" statement_identifier : (expression_statement "FUN_00041730(param_1,pbVar6 + 8);" (call_expression "FUN_00041730(param_1,pbVar6 + 8)" identifier (argument_list "(param_1,pbVar6 + 8)" ( identifier , (binary_expression "pbVar6 + 8" identifier + number_literal) ))) ;)) }) (else_clause "else {\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }" else (compound_statement "{\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }" { (if_statement "if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }" if (parenthesized_expression "(*(undefined4 **)(pbVar6 + 4) == DAT_00081410)" ( (binary_expression "*(undefined4 **)(pbVar6 + 4) == DAT_00081410" (pointer_expression "*(undefined4 **)(pbVar6 + 4)" * (cast_expression "(undefined4 **)(pbVar6 + 4)" ( (type_descriptor "undefined4 **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 4)" ( (binary_expression "pbVar6 + 4" identifier + number_literal) )))) == identifier) )) (compound_statement "{\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }" { (expression_statement "pbVar6 = *(byte **)(pbVar6 + 0xc);" (assignment_expression "pbVar6 = *(byte **)(pbVar6 + 0xc)" identifier = (pointer_expression "*(byte **)(pbVar6 + 0xc)" * (cast_expression "(byte **)(pbVar6 + 0xc)" ( (type_descriptor "byte **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(pbVar6 + 0xc)" ( (binary_expression "pbVar6 + 0xc" identifier + number_literal) ))))) ;) (goto_statement "goto LAB_000421c3;" goto statement_identifier ;) })) (expression_statement "fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);" (call_expression "fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8)" identifier (argument_list "(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8)" ( identifier , (string_literal ""constant %lx"" " string_content ") , (pointer_expression "*(undefined4 *)(pbVar6 + 0x10)" * (cast_expression "(undefined4 *)(pbVar6 + 0x10)" ( (type_descriptor "undefined4 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(pbVar6 + 0x10)" ( (binary_expression "pbVar6 + 0x10" identifier + number_literal) )))) , identifier ))) ;) }))) (expression_statement "fputc(0x3e,param_1);" (call_expression "fputc(0x3e,param_1)" identifier (argument_list "(0x3e,param_1)" ( number_literal , identifier ))) ;) (expression_statement "DAT_0008164c = DAT_0008164c + -1;" (assignment_expression "DAT_0008164c = DAT_0008164c + -1" identifier = (binary_expression "DAT_0008164c + -1" identifier + number_literal)) ;) (labeled_statement "LAB_00041e47:\n  fflush(param_1);" statement_identifier : (expression_statement "fflush(param_1);" (call_expression "fflush(param_1)" identifier (argument_list "(param_1)" ( identifier ))) ;)) (return_statement "return;" return ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE (pointer_declarator * IDENT)) , (parameter_declaration TYPE (pointer_declarator * IDENT)) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ]))) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) == (char_literal ' escape_sequence ')) )) (compound_statement { (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;) }))) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (string_literal " string_content ")) ;)) }))) (expression_statement (call_expression IDENT (argument_list ( (pointer_expression & IDENT) , LIT , LIT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") , IDENT , LIT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) || (parenthesized_expression ( (comma_expression (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) , (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == IDENT)) ))) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != (pointer_expression & IDENT)) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) })) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) }))) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , IDENT ))) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_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 IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , IDENT ))) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) != 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 IDENT == LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , IDENT ))) ;)) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (if_statement if (parenthesized_expression ( (binary_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 IDENT != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , IDENT ))) ;) })) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) == LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) & LIT) )) != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , IDENT ))) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) != LIT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) (goto_statement goto statement_identifier ;) })) })) (if_statement if (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (subscript_expression IDENT [ LIT ])) != (binary_expression IDENT + LIT)) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) & LIT) )) != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) == (binary_expression IDENT + LIT)) )) (goto_statement goto statement_identifier ;))) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , IDENT ))) ;)) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (goto_statement goto statement_identifier ;))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) & LIT) )) != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , IDENT ))) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) == LIT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != IDENT) )) (goto_statement goto statement_identifier ;)) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) )))) & LIT) )) != LIT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) (goto_statement goto statement_identifier ;) }))) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) && (parenthesized_expression ( (binary_expression IDENT != IDENT) ))) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , IDENT ))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , LIT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , IDENT ))) ;) })) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) }))) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) & LIT) )) != LIT) )) (goto_statement goto statement_identifier ;))) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (subscript_expression IDENT [ LIT ]) & LIT) )) != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , LIT , LIT , IDENT ))) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) != LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (goto_statement goto statement_identifier ;)) (goto_statement goto statement_identifier ;) })) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;)) }))) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") , (pointer_expression * IDENT) ))) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;)) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) && (parenthesized_expression ( (binary_expression IDENT != IDENT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( )))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") , IDENT ))) ;) }))) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;)) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) != LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) != LIT) )) (goto_statement goto statement_identifier ;)) (if_statement if (parenthesized_expression ( (binary_expression LIT < IDENT) )) (goto_statement goto statement_identifier ;)) }))) (if_statement if (parenthesized_expression ( (binary_expression IDENT == (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) )) (goto_statement goto statement_identifier ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (pointer_expression & IDENT)) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT , (string_literal " escape_sequence string_content ") , (binary_expression IDENT * LIT) , (pointer_expression & IDENT) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (pointer_expression * IDENT) & LIT) )) == LIT) )) (compound_statement { (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT , (binary_expression IDENT + LIT) ))) ;)) }) (else_clause else (compound_statement { (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == IDENT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator * (abstract_pointer_declarator *))) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (goto_statement goto statement_identifier ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , (string_literal " string_content ") , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) , IDENT ))) ;) }))) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;)) (return_statement return ;) })))
(function_definition "void FUN_00041bd0(FILE *param_1,byte *param_2)\n\n{\n  byte bVar1;\n  int iVar2;\n  undefined4 *puVar3;\n  undefined4 uVar4;\n  byte *pbVar5;\n  byte *pbVar6;\n  char *pcVar7;\n  undefined *puVar8;\n  \n  puVar3 = *(undefined4 **)(param_2 + 4);\n  if ((*param_2 & 1) == 0) {\nLAB_00041c16:\n    pcVar7 = (char *)puVar3[1];\n    if (pcVar7 == (char *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }\n  }\n  else {\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }\n  fwrite(&DAT_0005bbc8,1,4,param_1);\n  fprintf(param_1,"%016llx",param_2,0);\n  fprintf(param_1," %s",pcVar7);\n  bVar1 = *param_2;\n  pbVar6 = param_2;\n  if (((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)) {\n    if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }\n    bVar1 = *pbVar6;\n    if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }\n  }\n  else {\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }\nLAB_00041dd8:\n  fprintf(param_1," %s",*puVar3);\n  bVar1 = *pbVar6;\n  if ((bVar1 & 1) == 0) {\n    pbVar5 = pbVar6;\n    if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n    iVar2 = *(int *)(pbVar6 + 4);\nLAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);\n  }\n  else {\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }\n  if (puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;\n  DAT_0008164c = DAT_0008164c + 1;\n  puVar8 = &DAT_00057aaa;\n  fprintf(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa);\n  if ((*pbVar6 & 1) == 0) {\nLAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);\n  }\n  else {\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }\n  fputc(0x3e,param_1);\n  DAT_0008164c = DAT_0008164c + -1;\nLAB_00041e47:\n  fflush(param_1);\n  return;\n}" (primitive_type "void") (function_declarator "FUN_00041bd0(FILE *param_1,byte *param_2)" (identifier "FUN_00041bd0") (parameter_list "(FILE *param_1,byte *param_2)" (( "(") (parameter_declaration "FILE *param_1" (type_identifier "FILE") (pointer_declarator "*param_1" (* "*") (identifier "param_1"))) (, ",") (parameter_declaration "byte *param_2" (type_identifier "byte") (pointer_declarator "*param_2" (* "*") (identifier "param_2"))) () ")"))) (compound_statement "{\n  byte bVar1;\n  int iVar2;\n  undefined4 *puVar3;\n  undefined4 uVar4;\n  byte *pbVar5;\n  byte *pbVar6;\n  char *pcVar7;\n  undefined *puVar8;\n  \n  puVar3 = *(undefined4 **)(param_2 + 4);\n  if ((*param_2 & 1) == 0) {\nLAB_00041c16:\n    pcVar7 = (char *)puVar3[1];\n    if (pcVar7 == (char *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }\n  }\n  else {\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }\n  fwrite(&DAT_0005bbc8,1,4,param_1);\n  fprintf(param_1,"%016llx",param_2,0);\n  fprintf(param_1," %s",pcVar7);\n  bVar1 = *param_2;\n  pbVar6 = param_2;\n  if (((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)) {\n    if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }\n    bVar1 = *pbVar6;\n    if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }\n  }\n  else {\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }\nLAB_00041dd8:\n  fprintf(param_1," %s",*puVar3);\n  bVar1 = *pbVar6;\n  if ((bVar1 & 1) == 0) {\n    pbVar5 = pbVar6;\n    if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n    iVar2 = *(int *)(pbVar6 + 4);\nLAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);\n  }\n  else {\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }\n  if (puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;\n  DAT_0008164c = DAT_0008164c + 1;\n  puVar8 = &DAT_00057aaa;\n  fprintf(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa);\n  if ((*pbVar6 & 1) == 0) {\nLAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);\n  }\n  else {\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }\n  fputc(0x3e,param_1);\n  DAT_0008164c = DAT_0008164c + -1;\nLAB_00041e47:\n  fflush(param_1);\n  return;\n}" ({ "{") (declaration "byte bVar1;" (type_identifier "byte") (identifier "bVar1") (; ";")) (declaration "int iVar2;" (primitive_type "int") (identifier "iVar2") (; ";")) (declaration "undefined4 *puVar3;" (type_identifier "undefined4") (pointer_declarator "*puVar3" (* "*") (identifier "puVar3")) (; ";")) (declaration "undefined4 uVar4;" (type_identifier "undefined4") (identifier "uVar4") (; ";")) (declaration "byte *pbVar5;" (type_identifier "byte") (pointer_declarator "*pbVar5" (* "*") (identifier "pbVar5")) (; ";")) (declaration "byte *pbVar6;" (type_identifier "byte") (pointer_declarator "*pbVar6" (* "*") (identifier "pbVar6")) (; ";")) (declaration "char *pcVar7;" (primitive_type "char") (pointer_declarator "*pcVar7" (* "*") (identifier "pcVar7")) (; ";")) (declaration "undefined *puVar8;" (type_identifier "undefined") (pointer_declarator "*puVar8" (* "*") (identifier "puVar8")) (; ";")) (expression_statement "puVar3 = *(undefined4 **)(param_2 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(param_2 + 4)" (identifier "puVar3") (= "=") (pointer_expression "*(undefined4 **)(param_2 + 4)" (* "*") (cast_expression "(undefined4 **)(param_2 + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_2 + 4)" (( "(") (binary_expression "param_2 + 4" (identifier "param_2") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (if_statement "if ((*param_2 & 1) == 0) {\nLAB_00041c16:\n    pcVar7 = (char *)puVar3[1];\n    if (pcVar7 == (char *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }\n  }\n  else {\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }" (if "if") (parenthesized_expression "((*param_2 & 1) == 0)" (( "(") (binary_expression "(*param_2 & 1) == 0" (parenthesized_expression "(*param_2 & 1)" (( "(") (binary_expression "*param_2 & 1" (pointer_expression "*param_2" (* "*") (identifier "param_2")) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00041c16:\n    pcVar7 = (char *)puVar3[1];\n    if (pcVar7 == (char *)0x0) goto LAB_00041c03;\nLAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }\n  }" ({ "{") (labeled_statement "LAB_00041c16:\n    pcVar7 = (char *)puVar3[1];" (statement_identifier "LAB_00041c16") (: ":") (expression_statement "pcVar7 = (char *)puVar3[1];" (assignment_expression "pcVar7 = (char *)puVar3[1]" (identifier "pcVar7") (= "=") (cast_expression "(char *)puVar3[1]" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar3[1]" (identifier "puVar3") ([ "[") (number_literal "1") (] "]")))) (; ";"))) (if_statement "if (pcVar7 == (char *)0x0) goto LAB_00041c03;" (if "if") (parenthesized_expression "(pcVar7 == (char *)0x0)" (( "(") (binary_expression "pcVar7 == (char *)0x0" (identifier "pcVar7") (== "==") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00041c03;" (goto "goto") (statement_identifier "LAB_00041c03") (; ";"))) (labeled_statement "LAB_00041c1d:\n    if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }" (statement_identifier "LAB_00041c1d") (: ":") (if_statement "if (*pcVar7 == '\0') {\n      pcVar7 = "(unnamed)";\n    }" (if "if") (parenthesized_expression "(*pcVar7 == '\0')" (( "(") (binary_expression "*pcVar7 == '\0'" (pointer_expression "*pcVar7" (* "*") (identifier "pcVar7")) (== "==") (char_literal "'\0'" (' "'") (escape_sequence "\0") (' "'"))) () ")")) (compound_statement "{\n      pcVar7 = "(unnamed)";\n    }" ({ "{") (expression_statement "pcVar7 = "(unnamed)";" (assignment_expression "pcVar7 = "(unnamed)"" (identifier "pcVar7") (= "=") (string_literal ""(unnamed)"" (" """) (string_content "(unnamed)") (" """))) (; ";")) (} "}")))) (} "}")) (else_clause "else {\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }" (else "else") (compound_statement "{\n    if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }\n    pcVar7 = *(char **)(param_2 + 8);\n    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;\nLAB_00041c03:\n    pcVar7 = "(unnamed)";\n  }" ({ "{") (if_statement "if (DAT_00081410 == puVar3) {\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }" (if "if") (parenthesized_expression "(DAT_00081410 == puVar3)" (( "(") (binary_expression "DAT_00081410 == puVar3" (identifier "DAT_00081410") (== "==") (identifier "puVar3")) () ")")) (compound_statement "{\n      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);\n      goto LAB_00041c16;\n    }" ({ "{") (expression_statement "puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);" (assignment_expression "puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" (identifier "puVar3") (= "=") (pointer_expression "*(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" (* "*") (cast_expression "(undefined4 **)(*(int *)(param_2 + 0xc) + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(param_2 + 0xc) + 4)" (( "(") (binary_expression "*(int *)(param_2 + 0xc) + 4" (pointer_expression "*(int *)(param_2 + 0xc)" (* "*") (cast_expression "(int *)(param_2 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0xc)" (( "(") (binary_expression "param_2 + 0xc" (identifier "param_2") (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (number_literal "4")) () ")"))))) (; ";")) (goto_statement "goto LAB_00041c16;" (goto "goto") (statement_identifier "LAB_00041c16") (; ";")) (} "}"))) (expression_statement "pcVar7 = *(char **)(param_2 + 8);" (assignment_expression "pcVar7 = *(char **)(param_2 + 8)" (identifier "pcVar7") (= "=") (pointer_expression "*(char **)(param_2 + 8)" (* "*") (cast_expression "(char **)(param_2 + 8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_2 + 8)" (( "(") (binary_expression "param_2 + 8" (identifier "param_2") (+ "+") (number_literal "8")) () ")"))))) (; ";")) (if_statement "if (pcVar7 != (char *)0x0) goto LAB_00041c1d;" (if "if") (parenthesized_expression "(pcVar7 != (char *)0x0)" (( "(") (binary_expression "pcVar7 != (char *)0x0" (identifier "pcVar7") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (goto_statement "goto LAB_00041c1d;" (goto "goto") (statement_identifier "LAB_00041c1d") (; ";"))) (labeled_statement "LAB_00041c03:\n    pcVar7 = "(unnamed)";" (statement_identifier "LAB_00041c03") (: ":") (expression_statement "pcVar7 = "(unnamed)";" (assignment_expression "pcVar7 = "(unnamed)"" (identifier "pcVar7") (= "=") (string_literal ""(unnamed)"" (" """) (string_content "(unnamed)") (" """))) (; ";"))) (} "}")))) (expression_statement "fwrite(&DAT_0005bbc8,1,4,param_1);" (call_expression "fwrite(&DAT_0005bbc8,1,4,param_1)" (identifier "fwrite") (argument_list "(&DAT_0005bbc8,1,4,param_1)" (( "(") (pointer_expression "&DAT_0005bbc8" (& "&") (identifier "DAT_0005bbc8")) (, ",") (number_literal "1") (, ",") (number_literal "4") (, ",") (identifier "param_1") () ")"))) (; ";")) (expression_statement "fprintf(param_1,"%016llx",param_2,0);" (call_expression "fprintf(param_1,"%016llx",param_2,0)" (identifier "fprintf") (argument_list "(param_1,"%016llx",param_2,0)" (( "(") (identifier "param_1") (, ",") (string_literal ""%016llx"" (" """) (string_content "%016llx") (" """)) (, ",") (identifier "param_2") (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "fprintf(param_1," %s",pcVar7);" (call_expression "fprintf(param_1," %s",pcVar7)" (identifier "fprintf") (argument_list "(param_1," %s",pcVar7)" (( "(") (identifier "param_1") (, ",") (string_literal "" %s"" (" """) (string_content " %s") (" """)) (, ",") (identifier "pcVar7") () ")"))) (; ";")) (expression_statement "bVar1 = *param_2;" (assignment_expression "bVar1 = *param_2" (identifier "bVar1") (= "=") (pointer_expression "*param_2" (* "*") (identifier "param_2"))) (; ";")) (expression_statement "pbVar6 = param_2;" (assignment_expression "pbVar6 = param_2" (identifier "pbVar6") (= "=") (identifier "param_2")) (; ";")) (if_statement "if (((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)) {\n    if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }\n    bVar1 = *pbVar6;\n    if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }\n  }\n  else {\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }" (if "if") (parenthesized_expression "(((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410))" (( "(") (binary_expression "((bVar1 & 1) == 0) ||\n     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)" (parenthesized_expression "((bVar1 & 1) == 0)" (( "(") (binary_expression "(bVar1 & 1) == 0" (parenthesized_expression "(bVar1 & 1)" (( "(") (binary_expression "bVar1 & 1" (identifier "bVar1") (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)" (( "(") (comma_expression "pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410" (assignment_expression "pbVar6 = *(byte **)(param_2 + 0xc)" (identifier "pbVar6") (= "=") (pointer_expression "*(byte **)(param_2 + 0xc)" (* "*") (cast_expression "(byte **)(param_2 + 0xc)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_2 + 0xc)" (( "(") (binary_expression "param_2 + 0xc" (identifier "param_2") (+ "+") (number_literal "0xc")) () ")"))))) (, ",") (binary_expression "*(undefined4 **)(param_2 + 4) == DAT_00081410" (pointer_expression "*(undefined4 **)(param_2 + 4)" (* "*") (cast_expression "(undefined4 **)(param_2 + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(param_2 + 4)" (( "(") (binary_expression "param_2 + 4" (identifier "param_2") (+ "+") (number_literal "4")) () ")")))) (== "==") (identifier "DAT_00081410"))) () ")"))) () ")")) (compound_statement "{\n    if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }\n    bVar1 = *pbVar6;\n    if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }\n    if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }\n    if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }\nLAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;\nLAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }\n  }" ({ "{") (if_statement "if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }" (if "if") (parenthesized_expression "(*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0)" (( "(") (binary_expression "*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0" (pointer_expression "*(undefined4 **)(pbVar6 + 0x24)" (* "*") (cast_expression "(undefined4 **)(pbVar6 + 0x24)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pbVar6 + 0x24)" (( "(") (binary_expression "pbVar6 + 0x24" (identifier "pbVar6") (+ "+") (number_literal "0x24")) () ")")))) (!= "!=") (pointer_expression "&DAT_000813a0" (& "&") (identifier "DAT_000813a0"))) () ")")) (compound_statement "{\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);\n    }" ({ "{") (expression_statement "fwrite(" frag ",1,6,param_1);" (call_expression "fwrite(" frag ",1,6,param_1)" (identifier "fwrite") (argument_list "(" frag ",1,6,param_1)" (( "(") (string_literal "" frag "" (" """) (string_content " frag ") (" """)) (, ",") (number_literal "1") (, ",") (number_literal "6") (, ",") (identifier "param_1") () ")"))) (; ";")) (expression_statement "fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);" (call_expression "fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0)" (identifier "fprintf") (argument_list "(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0)" (( "(") (identifier "param_1") (, ",") (string_literal ""%016llx"" (" """) (string_content "%016llx") (" """)) (, ",") (pointer_expression "*(undefined4 *)(pbVar6 + 0x24)" (* "*") (cast_expression "(undefined4 *)(pbVar6 + 0x24)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar6 + 0x24)" (( "(") (binary_expression "pbVar6 + 0x24" (identifier "pbVar6") (+ "+") (number_literal "0x24")) () ")")))) (, ",") (number_literal "0") () ")"))) (; ";")) (} "}"))) (expression_statement "bVar1 = *pbVar6;" (assignment_expression "bVar1 = *pbVar6" (identifier "bVar1") (= "=") (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6"))) (; ";")) (if_statement "if ((bVar1 & 2) != 0) {\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }" (if "if") (parenthesized_expression "((bVar1 & 2) != 0)" (( "(") (binary_expression "(bVar1 & 2) != 0" (parenthesized_expression "(bVar1 & 2)" (( "(") (binary_expression "bVar1 & 2" (identifier "bVar1") (& "&") (number_literal "2")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      fwrite(" written",1,8,param_1);\n      bVar1 = *pbVar6;\n    }" ({ "{") (expression_statement "fwrite(" written",1,8,param_1);" (call_expression "fwrite(" written",1,8,param_1)" (identifier "fwrite") (argument_list "(" written",1,8,param_1)" (( "(") (string_literal "" written"" (" """) (string_content " written") (" """)) (, ",") (number_literal "1") (, ",") (number_literal "8") (, ",") (identifier "param_1") () ")"))) (; ";")) (expression_statement "bVar1 = *pbVar6;" (assignment_expression "bVar1 = *pbVar6" (identifier "bVar1") (= "=") (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6"))) (; ";")) (} "}"))) (if_statement "if ((bVar1 & 4) == 0) {\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }\n    else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }" (if "if") (parenthesized_expression "((bVar1 & 4) == 0)" (( "(") (binary_expression "(bVar1 & 4) == 0" (parenthesized_expression "(bVar1 & 4)" (( "(") (binary_expression "bVar1 & 4" (identifier "bVar1") (& "&") (number_literal "4")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }\n    }" ({ "{") (if_statement "if ((bVar1 & 8) != 0) {\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }" (if "if") (parenthesized_expression "((bVar1 & 8) != 0)" (( "(") (binary_expression "(bVar1 & 8) != 0" (parenthesized_expression "(bVar1 & 8)" (( "(") (binary_expression "bVar1 & 8" (identifier "bVar1") (& "&") (number_literal "8")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        fwrite(" resolving",1,10,param_1);\n        bVar1 = *pbVar6;\n      }" ({ "{") (expression_statement "fwrite(" resolving",1,10,param_1);" (call_expression "fwrite(" resolving",1,10,param_1)" (identifier "fwrite") (argument_list "(" resolving",1,10,param_1)" (( "(") (string_literal "" resolving"" (" """) (string_content " resolving") (" """)) (, ",") (number_literal "1") (, ",") (number_literal "10") (, ",") (identifier "param_1") () ")"))) (; ";")) (expression_statement "bVar1 = *pbVar6;" (assignment_expression "bVar1 = *pbVar6" (identifier "bVar1") (= "=") (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6"))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }" (else "else") (compound_statement "{\n      fwrite(" resolved",1,9,param_1);\n      bVar1 = *pbVar6;\n    }" ({ "{") (expression_statement "fwrite(" resolved",1,9,param_1);" (call_expression "fwrite(" resolved",1,9,param_1)" (identifier "fwrite") (argument_list "(" resolved",1,9,param_1)" (( "(") (string_literal "" resolved"" (" """) (string_content " resolved") (" """)) (, ",") (number_literal "1") (, ",") (number_literal "9") (, ",") (identifier "param_1") () ")"))) (; ";")) (expression_statement "bVar1 = *pbVar6;" (assignment_expression "bVar1 = *pbVar6" (identifier "bVar1") (= "=") (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6"))) (; ";")) (} "}")))) (if_statement "if ((bVar1 & 0x10) == 0) {\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }\n    else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }" (if "if") (parenthesized_expression "((bVar1 & 0x10) == 0)" (( "(") (binary_expression "(bVar1 & 0x10) == 0" (parenthesized_expression "(bVar1 & 0x10)" (( "(") (binary_expression "bVar1 & 0x10" (identifier "bVar1") (& "&") (number_literal "0x10")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;\nLAB_00041eef:\n      fwrite(" used",1,5,param_1);\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f17;\nLAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d7d;\nLAB_00041f3f:\n      fwrite(" extern",1,7,param_1);\n      iVar2 = FUN_0003dc90(pbVar6);\n    }" ({ "{") (if_statement "if ((bVar1 & 0x20) == 0) goto LAB_00041d55;" (if "if") (parenthesized_expression "((bVar1 & 0x20) == 0)" (( "(") (binary_expression "(bVar1 & 0x20) == 0" (parenthesized_expression "(bVar1 & 0x20)" (( "(") (binary_expression "bVar1 & 0x20" (identifier "bVar1") (& "&") (number_literal "0x20")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00041d55;" (goto "goto") (statement_identifier "LAB_00041d55") (; ";"))) (labeled_statement "LAB_00041eef:\n      fwrite(" used",1,5,param_1);" (statement_identifier "LAB_00041eef") (: ":") (expression_statement "fwrite(" used",1,5,param_1);" (call_expression "fwrite(" used",1,5,param_1)" (identifier "fwrite") (argument_list "(" used",1,5,param_1)" (( "(") (string_literal "" used"" (" """) (string_content " used") (" """)) (, ",") (number_literal "1") (, ",") (number_literal "5") (, ",") (identifier "param_1") () ")"))) (; ";"))) (expression_statement "iVar2 = FUN_0003df00(pbVar6);" (assignment_expression "iVar2 = FUN_0003df00(pbVar6)" (identifier "iVar2") (= "=") (call_expression "FUN_0003df00(pbVar6)" (identifier "FUN_0003df00") (argument_list "(pbVar6)" (( "(") (identifier "pbVar6") () ")")))) (; ";")) (if_statement "if (iVar2 != 0) goto LAB_00041f17;" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00041f17;" (goto "goto") (statement_identifier "LAB_00041f17") (; ";"))) (labeled_statement "LAB_00041d69:\n      iVar2 = FUN_0003dc20(pbVar6);" (statement_identifier "LAB_00041d69") (: ":") (expression_statement "iVar2 = FUN_0003dc20(pbVar6);" (assignment_expression "iVar2 = FUN_0003dc20(pbVar6)" (identifier "iVar2") (= "=") (call_expression "FUN_0003dc20(pbVar6)" (identifier "FUN_0003dc20") (argument_list "(pbVar6)" (( "(") (identifier "pbVar6") () ")")))) (; ";"))) (if_statement "if (iVar2 == 0) goto LAB_00041d7d;" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00041d7d;" (goto "goto") (statement_identifier "LAB_00041d7d") (; ";"))) (labeled_statement "LAB_00041f3f:\n      fwrite(" extern",1,7,param_1);" (statement_identifier "LAB_00041f3f") (: ":") (expression_statement "fwrite(" extern",1,7,param_1);" (call_expression "fwrite(" extern",1,7,param_1)" (identifier "fwrite") (argument_list "(" extern",1,7,param_1)" (( "(") (string_literal "" extern"" (" """) (string_content " extern") (" """)) (, ",") (number_literal "1") (, ",") (number_literal "7") (, ",") (identifier "param_1") () ")"))) (; ";"))) (expression_statement "iVar2 = FUN_0003dc90(pbVar6);" (assignment_expression "iVar2 = FUN_0003dc90(pbVar6)" (identifier "iVar2") (= "=") (call_expression "FUN_0003dc90(pbVar6)" (identifier "FUN_0003dc90") (argument_list "(pbVar6)" (( "(") (identifier "pbVar6") () ")")))) (; ";")) (} "}")) (else_clause "else {\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }" (else "else") (compound_statement "{\n      fwrite(" used-in-reloc",1,0xe,param_1);\n      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;\nLAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);\n      if (iVar2 == 0) goto LAB_00041d69;\nLAB_00041f17:\n      fwrite(" local",1,6,param_1);\n      iVar2 = FUN_0003dc20(pbVar6);\n      if (iVar2 != 0) goto LAB_00041f3f;\nLAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);\n    }" ({ "{") (expression_statement "fwrite(" used-in-reloc",1,0xe,param_1);" (call_expression "fwrite(" used-in-reloc",1,0xe,param_1)" (identifier "fwrite") (argument_list "(" used-in-reloc",1,0xe,param_1)" (( "(") (string_literal "" used-in-reloc"" (" """) (string_content " used-in-reloc") (" """)) (, ",") (number_literal "1") (, ",") (number_literal "0xe") (, ",") (identifier "param_1") () ")"))) (; ";")) (if_statement "if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;" (if "if") (parenthesized_expression "((*pbVar6 & 0x20) != 0)" (( "(") (binary_expression "(*pbVar6 & 0x20) != 0" (parenthesized_expression "(*pbVar6 & 0x20)" (( "(") (binary_expression "*pbVar6 & 0x20" (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6")) (& "&") (number_literal "0x20")) () ")")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00041eef;" (goto "goto") (statement_identifier "LAB_00041eef") (; ";"))) (labeled_statement "LAB_00041d55:\n      iVar2 = FUN_0003df00(pbVar6);" (statement_identifier "LAB_00041d55") (: ":") (expression_statement "iVar2 = FUN_0003df00(pbVar6);" (assignment_expression "iVar2 = FUN_0003df00(pbVar6)" (identifier "iVar2") (= "=") (call_expression "FUN_0003df00(pbVar6)" (identifier "FUN_0003df00") (argument_list "(pbVar6)" (( "(") (identifier "pbVar6") () ")")))) (; ";"))) (if_statement "if (iVar2 == 0) goto LAB_00041d69;" (if "if") (parenthesized_expression "(iVar2 == 0)" (( "(") (binary_expression "iVar2 == 0" (identifier "iVar2") (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00041d69;" (goto "goto") (statement_identifier "LAB_00041d69") (; ";"))) (labeled_statement "LAB_00041f17:\n      fwrite(" local",1,6,param_1);" (statement_identifier "LAB_00041f17") (: ":") (expression_statement "fwrite(" local",1,6,param_1);" (call_expression "fwrite(" local",1,6,param_1)" (identifier "fwrite") (argument_list "(" local",1,6,param_1)" (( "(") (string_literal "" local"" (" """) (string_content " local") (" """)) (, ",") (number_literal "1") (, ",") (number_literal "6") (, ",") (identifier "param_1") () ")"))) (; ";"))) (expression_statement "iVar2 = FUN_0003dc20(pbVar6);" (assignment_expression "iVar2 = FUN_0003dc20(pbVar6)" (identifier "iVar2") (= "=") (call_expression "FUN_0003dc20(pbVar6)" (identifier "FUN_0003dc20") (argument_list "(pbVar6)" (( "(") (identifier "pbVar6") () ")")))) (; ";")) (if_statement "if (iVar2 != 0) goto LAB_00041f3f;" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00041f3f;" (goto "goto") (statement_identifier "LAB_00041f3f") (; ";"))) (labeled_statement "LAB_00041d7d:\n      iVar2 = FUN_0003dc90(pbVar6);" (statement_identifier "LAB_00041d7d") (: ":") (expression_statement "iVar2 = FUN_0003dc90(pbVar6);" (assignment_expression "iVar2 = FUN_0003dc90(pbVar6)" (identifier "iVar2") (= "=") (call_expression "FUN_0003dc90(pbVar6)" (identifier "FUN_0003dc90") (argument_list "(pbVar6)" (( "(") (identifier "pbVar6") () ")")))) (; ";"))) (} "}")))) (if_statement "if (iVar2 != 0) {\n      fwrite(" weak",1,5,param_1);\n    }" (if "if") (parenthesized_expression "(iVar2 != 0)" (( "(") (binary_expression "iVar2 != 0" (identifier "iVar2") (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      fwrite(" weak",1,5,param_1);\n    }" ({ "{") (expression_statement "fwrite(" weak",1,5,param_1);" (call_expression "fwrite(" weak",1,5,param_1)" (identifier "fwrite") (argument_list "(" weak",1,5,param_1)" (( "(") (string_literal "" weak"" (" """) (string_content " weak") (" """)) (, ",") (number_literal "1") (, ",") (number_literal "5") (, ",") (identifier "param_1") () ")"))) (; ";")) (} "}"))) (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" (identifier "puVar3") (= "=") (pointer_expression "*(undefined4 **)(pbVar6 + 4)" (* "*") (cast_expression "(undefined4 **)(pbVar6 + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pbVar6 + 4)" (( "(") (binary_expression "pbVar6 + 4" (identifier "pbVar6") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (if_statement "if ((*pbVar6 & 1) == 0) {\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }" (if "if") (parenthesized_expression "((*pbVar6 & 1) == 0)" (( "(") (binary_expression "(*pbVar6 & 1) == 0" (parenthesized_expression "(*pbVar6 & 1)" (( "(") (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6")) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }\n      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;\n      goto LAB_00041dbc;\n    }" ({ "{") (if_statement "if ((*(byte *)(puVar3 + 4) & 4) != 0) {\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }" (if "if") (parenthesized_expression "((*(byte *)(puVar3 + 4) & 4) != 0)" (( "(") (binary_expression "(*(byte *)(puVar3 + 4) & 4) != 0" (parenthesized_expression "(*(byte *)(puVar3 + 4) & 4)" (( "(") (binary_expression "*(byte *)(puVar3 + 4) & 4" (pointer_expression "*(byte *)(puVar3 + 4)" (* "*") (cast_expression "(byte *)(puVar3 + 4)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(puVar3 + 4)" (( "(") (binary_expression "puVar3 + 4" (identifier "puVar3") (+ "+") (number_literal "4")) () ")")))) (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00042130:\n        fwrite(" debug",1,6,param_1);\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }\n      }" ({ "{") (labeled_statement "LAB_00042130:\n        fwrite(" debug",1,6,param_1);" (statement_identifier "LAB_00042130") (: ":") (expression_statement "fwrite(" debug",1,6,param_1);" (call_expression "fwrite(" debug",1,6,param_1)" (identifier "fwrite") (argument_list "(" debug",1,6,param_1)" (( "(") (string_literal "" debug"" (" """) (string_content " debug") (" """)) (, ",") (number_literal "1") (, ",") (number_literal "6") (, ",") (identifier "param_1") () ")"))) (; ";"))) (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" (identifier "puVar3") (= "=") (pointer_expression "*(undefined4 **)(pbVar6 + 4)" (* "*") (cast_expression "(undefined4 **)(pbVar6 + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pbVar6 + 4)" (( "(") (binary_expression "pbVar6 + 4" (identifier "pbVar6") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (if_statement "if ((*pbVar6 & 1) != 0) {\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }" (if "if") (parenthesized_expression "((*pbVar6 & 1) != 0)" (( "(") (binary_expression "(*pbVar6 & 1) != 0" (parenthesized_expression "(*pbVar6 & 1)" (( "(") (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6")) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n          if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }\n          goto LAB_00041e70;\n        }" ({ "{") (if_statement "if (puVar3 == DAT_00081410) {\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }" (if "if") (parenthesized_expression "(puVar3 == DAT_00081410)" (( "(") (binary_expression "puVar3 == DAT_00081410" (identifier "puVar3") (== "==") (identifier "DAT_00081410")) () ")")) (compound_statement "{\n            iVar2 = *(int *)(pbVar6 + 0xc);\n            goto LAB_0004219c;\n          }" ({ "{") (expression_statement "iVar2 = *(int *)(pbVar6 + 0xc);" (assignment_expression "iVar2 = *(int *)(pbVar6 + 0xc)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pbVar6 + 0xc)" (* "*") (cast_expression "(int *)(pbVar6 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar6 + 0xc)" (( "(") (binary_expression "pbVar6 + 0xc" (identifier "pbVar6") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (goto_statement "goto LAB_0004219c;" (goto "goto") (statement_identifier "LAB_0004219c") (; ";")) (} "}"))) (goto_statement "goto LAB_00041e70;" (goto "goto") (statement_identifier "LAB_00041e70") (; ";")) (} "}"))) (} "}"))) (if_statement "if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;" (if "if") (parenthesized_expression "((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0)" (( "(") (binary_expression "(undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0" (cast_expression "(undefined *)puVar3[5]" (( "(") (type_descriptor "undefined *" (type_identifier "undefined") (abstract_pointer_declarator "*" (* "*"))) () ")") (subscript_expression "puVar3[5]" (identifier "puVar3") ([ "[") (number_literal "5") (] "]"))) (!= "!=") (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" (identifier "PTR__bfd_std_section_00077fa0") (+ "+") (number_literal "0xc0"))) () ")")) (goto_statement "goto LAB_00041e84;" (goto "goto") (statement_identifier "LAB_00041e84") (; ";"))) (goto_statement "goto LAB_00041dbc;" (goto "goto") (statement_identifier "LAB_00041dbc") (; ";")) (} "}"))) (if_statement "if (DAT_00081410 == puVar3) {\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }" (if "if") (parenthesized_expression "(DAT_00081410 == puVar3)" (( "(") (binary_expression "DAT_00081410 == puVar3" (identifier "DAT_00081410") (== "==") (identifier "puVar3")) () ")")) (compound_statement "{\n      iVar2 = *(int *)(pbVar6 + 0xc);\n      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;\nLAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;\nLAB_00041e84:\n      fwrite(" defined",1,8,param_1);\n      goto LAB_00041cce;\n    }" ({ "{") (expression_statement "iVar2 = *(int *)(pbVar6 + 0xc);" (assignment_expression "iVar2 = *(int *)(pbVar6 + 0xc)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pbVar6 + 0xc)" (* "*") (cast_expression "(int *)(pbVar6 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar6 + 0xc)" (( "(") (binary_expression "pbVar6 + 0xc" (identifier "pbVar6") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (if_statement "if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;" (if "if") (parenthesized_expression "((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0)" (( "(") (binary_expression "(*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0" (parenthesized_expression "(*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4)" (( "(") (binary_expression "*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4" (pointer_expression "*(byte *)(*(int *)(iVar2 + 4) + 0x10)" (* "*") (cast_expression "(byte *)(*(int *)(iVar2 + 4) + 0x10)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(iVar2 + 4) + 0x10)" (( "(") (binary_expression "*(int *)(iVar2 + 4) + 0x10" (pointer_expression "*(int *)(iVar2 + 4)" (* "*") (cast_expression "(int *)(iVar2 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 4)" (( "(") (binary_expression "iVar2 + 4" (identifier "iVar2") (+ "+") (number_literal "4")) () ")")))) (+ "+") (number_literal "0x10")) () ")")))) (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00042130;" (goto "goto") (statement_identifier "LAB_00042130") (; ";"))) (labeled_statement "LAB_0004219c:\n      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;" (statement_identifier "LAB_0004219c") (: ":") (if_statement "if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)\n      goto LAB_00041cce;" (if "if") (parenthesized_expression "(*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)" (( "(") (binary_expression "*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0" (pointer_expression "*(undefined **)(*(int *)(iVar2 + 4) + 0x14)" (* "*") (cast_expression "(undefined **)(*(int *)(iVar2 + 4) + 0x14)" (( "(") (type_descriptor "undefined **" (type_identifier "undefined") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(iVar2 + 4) + 0x14)" (( "(") (binary_expression "*(int *)(iVar2 + 4) + 0x14" (pointer_expression "*(int *)(iVar2 + 4)" (* "*") (cast_expression "(int *)(iVar2 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(iVar2 + 4)" (( "(") (binary_expression "iVar2 + 4" (identifier "iVar2") (+ "+") (number_literal "4")) () ")")))) (+ "+") (number_literal "0x14")) () ")")))) (== "==") (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" (identifier "PTR__bfd_std_section_00077fa0") (+ "+") (number_literal "0xc0"))) () ")")) (goto_statement "goto LAB_00041cce;" (goto "goto") (statement_identifier "LAB_00041cce") (; ";")))) (labeled_statement "LAB_00041e84:\n      fwrite(" defined",1,8,param_1);" (statement_identifier "LAB_00041e84") (: ":") (expression_statement "fwrite(" defined",1,8,param_1);" (call_expression "fwrite(" defined",1,8,param_1)" (identifier "fwrite") (argument_list "(" defined",1,8,param_1)" (( "(") (string_literal "" defined"" (" """) (string_content " defined") (" """)) (, ",") (number_literal "1") (, ",") (number_literal "8") (, ",") (identifier "param_1") () ")"))) (; ";"))) (goto_statement "goto LAB_00041cce;" (goto "goto") (statement_identifier "LAB_00041cce") (; ";")) (} "}"))) (labeled_statement "LAB_00041e70:\n    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;" (statement_identifier "LAB_00041e70") (: ":") (if_statement "if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;" (if "if") (parenthesized_expression "(puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0))" (( "(") (binary_expression "puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" (identifier "puVar3") (!= "!=") (cast_expression "(undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR__bfd_std_section_00077fa0 + 0xc0)" (( "(") (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" (identifier "PTR__bfd_std_section_00077fa0") (+ "+") (number_literal "0xc0")) () ")")))) () ")")) (goto_statement "goto LAB_00041e84;" (goto "goto") (statement_identifier "LAB_00041e84") (; ";")))) (labeled_statement "LAB_00041ce2:\n    if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }" (statement_identifier "LAB_00041ce2") (: ":") (if_statement "if (DAT_00081410 == puVar3) {\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }" (if "if") (parenthesized_expression "(DAT_00081410 == puVar3)" (( "(") (binary_expression "DAT_00081410 == puVar3" (identifier "DAT_00081410") (== "==") (identifier "puVar3")) () ")")) (compound_statement "{\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }\n      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;\nLAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_00041dd2;\n    }" ({ "{") (if_statement "if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }" (if "if") (parenthesized_expression "((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0)" (( "(") (binary_expression "(*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0" (parenthesized_expression "(*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2)" (( "(") (binary_expression "*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2" (pointer_expression "*(byte *)(*(int *)(pbVar6 + 0xc) + 1)" (* "*") (cast_expression "(byte *)(*(int *)(pbVar6 + 0xc) + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pbVar6 + 0xc) + 1)" (( "(") (binary_expression "*(int *)(pbVar6 + 0xc) + 1" (pointer_expression "*(int *)(pbVar6 + 0xc)" (* "*") (cast_expression "(int *)(pbVar6 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar6 + 0xc)" (( "(") (binary_expression "pbVar6 + 0xc" (identifier "pbVar6") (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (number_literal "1")) () ")")))) (& "&") (number_literal "2")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);\n        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 != puVar3) goto LAB_00041dd8;\n      }" ({ "{") (labeled_statement "LAB_00041fc0:\n        fwrite(" weakrefr",1,9,param_1);" (statement_identifier "LAB_00041fc0") (: ":") (expression_statement "fwrite(" weakrefr",1,9,param_1);" (call_expression "fwrite(" weakrefr",1,9,param_1)" (identifier "fwrite") (argument_list "(" weakrefr",1,9,param_1)" (( "(") (string_literal "" weakrefr"" (" """) (string_content " weakrefr") (" """)) (, ",") (number_literal "1") (, ",") (number_literal "9") (, ",") (identifier "param_1") () ")"))) (; ";"))) (if_statement "if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;" (if "if") (parenthesized_expression "((*pbVar6 & 1) == 0)" (( "(") (binary_expression "(*pbVar6 & 1) == 0" (parenthesized_expression "(*pbVar6 & 1)" (( "(") (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6")) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (goto_statement "goto LAB_00041dc6;" (goto "goto") (statement_identifier "LAB_00041dc6") (; ";"))) (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" (identifier "puVar3") (= "=") (pointer_expression "*(undefined4 **)(pbVar6 + 4)" (* "*") (cast_expression "(undefined4 **)(pbVar6 + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pbVar6 + 4)" (( "(") (binary_expression "pbVar6 + 4" (identifier "pbVar6") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (if_statement "if (DAT_00081410 != puVar3) goto LAB_00041dd8;" (if "if") (parenthesized_expression "(DAT_00081410 != puVar3)" (( "(") (binary_expression "DAT_00081410 != puVar3" (identifier "DAT_00081410") (!= "!=") (identifier "puVar3")) () ")")) (goto_statement "goto LAB_00041dd8;" (goto "goto") (statement_identifier "LAB_00041dd8") (; ";"))) (} "}"))) (if_statement "if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;" (if "if") (parenthesized_expression "((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0)" (( "(") (binary_expression "(*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0" (parenthesized_expression "(*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4)" (( "(") (binary_expression "*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4" (pointer_expression "*(byte *)(*(int *)(pbVar6 + 0xc) + 1)" (* "*") (cast_expression "(byte *)(*(int *)(pbVar6 + 0xc) + 1)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(*(int *)(pbVar6 + 0xc) + 1)" (( "(") (binary_expression "*(int *)(pbVar6 + 0xc) + 1" (pointer_expression "*(int *)(pbVar6 + 0xc)" (* "*") (cast_expression "(int *)(pbVar6 + 0xc)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar6 + 0xc)" (( "(") (binary_expression "pbVar6 + 0xc" (identifier "pbVar6") (+ "+") (number_literal "0xc")) () ")")))) (+ "+") (number_literal "1")) () ")")))) (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00041ff8;" (goto "goto") (statement_identifier "LAB_00041ff8") (; ";"))) (labeled_statement "LAB_00042102:\n      pbVar5 = *(byte **)(pbVar6 + 0xc);" (statement_identifier "LAB_00042102") (: ":") (expression_statement "pbVar5 = *(byte **)(pbVar6 + 0xc);" (assignment_expression "pbVar5 = *(byte **)(pbVar6 + 0xc)" (identifier "pbVar5") (= "=") (pointer_expression "*(byte **)(pbVar6 + 0xc)" (* "*") (cast_expression "(byte **)(pbVar6 + 0xc)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pbVar6 + 0xc)" (( "(") (binary_expression "pbVar6 + 0xc" (identifier "pbVar6") (+ "+") (number_literal "0xc")) () ")"))))) (; ";"))) (goto_statement "goto LAB_00041dd2;" (goto "goto") (statement_identifier "LAB_00041dd2") (; ";")) (} "}")))) (} "}")) (else_clause "else {\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }" (else "else") (compound_statement "{\n    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }\n    if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }\n    fwrite(" local",1,6,param_1);\n    pbVar6 = param_2;\nLAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }\nLAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;\nLAB_00041dc6:\n    pbVar5 = pbVar6;\n    if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }\nLAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\n  }" ({ "{") (if_statement "if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }" (if "if") (parenthesized_expression "((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60))" (( "(") (binary_expression "(pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)" (parenthesized_expression "(pbVar6 != (byte *)0x0)" (( "(") (binary_expression "pbVar6 != (byte *)0x0" (identifier "pbVar6") (!= "!=") (cast_expression "(byte *)0x0" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (&& "&&") (parenthesized_expression "(pbVar6 != PTR_DAT_00077f60)" (( "(") (binary_expression "pbVar6 != PTR_DAT_00077f60" (identifier "pbVar6") (!= "!=") (identifier "PTR_DAT_00077f60")) () ")"))) () ")")) (compound_statement "{\n      fwrite(" frag ",1,6,param_1);\n      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);\n      bVar1 = *param_2;\n    }" ({ "{") (expression_statement "fwrite(" frag ",1,6,param_1);" (call_expression "fwrite(" frag ",1,6,param_1)" (identifier "fwrite") (argument_list "(" frag ",1,6,param_1)" (( "(") (string_literal "" frag "" (" """) (string_content " frag ") (" """)) (, ",") (number_literal "1") (, ",") (number_literal "6") (, ",") (identifier "param_1") () ")"))) (; ";")) (expression_statement "fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);" (call_expression "fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0)" (identifier "fprintf") (argument_list "(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0)" (( "(") (identifier "param_1") (, ",") (string_literal ""%016llx"" (" """) (string_content "%016llx") (" """)) (, ",") (pointer_expression "*(undefined4 *)(param_2 + 0xc)" (* "*") (cast_expression "(undefined4 *)(param_2 + 0xc)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(param_2 + 0xc)" (( "(") (binary_expression "param_2 + 0xc" (identifier "param_2") (+ "+") (number_literal "0xc")) () ")")))) (, ",") (number_literal "0") () ")"))) (; ";")) (expression_statement "bVar1 = *param_2;" (assignment_expression "bVar1 = *param_2" (identifier "bVar1") (= "=") (pointer_expression "*param_2" (* "*") (identifier "param_2"))) (; ";")) (} "}"))) (if_statement "if ((bVar1 & 4) != 0) {\n      fwrite(" resolved",1,9,param_1);\n    }" (if "if") (parenthesized_expression "((bVar1 & 4) != 0)" (( "(") (binary_expression "(bVar1 & 4) != 0" (parenthesized_expression "(bVar1 & 4)" (( "(") (binary_expression "bVar1 & 4" (identifier "bVar1") (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      fwrite(" resolved",1,9,param_1);\n    }" ({ "{") (expression_statement "fwrite(" resolved",1,9,param_1);" (call_expression "fwrite(" resolved",1,9,param_1)" (identifier "fwrite") (argument_list "(" resolved",1,9,param_1)" (( "(") (string_literal "" resolved"" (" """) (string_content " resolved") (" """)) (, ",") (number_literal "1") (, ",") (number_literal "9") (, ",") (identifier "param_1") () ")"))) (; ";")) (} "}"))) (expression_statement "fwrite(" local",1,6,param_1);" (call_expression "fwrite(" local",1,6,param_1)" (identifier "fwrite") (argument_list "(" local",1,6,param_1)" (( "(") (string_literal "" local"" (" """) (string_content " local") (" """)) (, ",") (number_literal "1") (, ",") (number_literal "6") (, ",") (identifier "param_1") () ")"))) (; ";")) (expression_statement "pbVar6 = param_2;" (assignment_expression "pbVar6 = param_2" (identifier "pbVar6") (= "=") (identifier "param_2")) (; ";")) (labeled_statement "LAB_00041cce:\n    if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }" (statement_identifier "LAB_00041cce") (: ":") (if_statement "if ((*pbVar6 & 1) != 0) {\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }" (if "if") (parenthesized_expression "((*pbVar6 & 1) != 0)" (( "(") (binary_expression "(*pbVar6 & 1) != 0" (parenthesized_expression "(*pbVar6 & 1)" (( "(") (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6")) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n      puVar3 = *(undefined4 **)(pbVar6 + 4);\n      goto LAB_00041ce2;\n    }" ({ "{") (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" (identifier "puVar3") (= "=") (pointer_expression "*(undefined4 **)(pbVar6 + 4)" (* "*") (cast_expression "(undefined4 **)(pbVar6 + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pbVar6 + 4)" (( "(") (binary_expression "pbVar6 + 4" (identifier "pbVar6") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (goto_statement "goto LAB_00041ce2;" (goto "goto") (statement_identifier "LAB_00041ce2") (; ";")) (} "}")))) (labeled_statement "LAB_00041dbc:\n    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;" (statement_identifier "LAB_00041dbc") (: ":") (if_statement "if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;" (if "if") (parenthesized_expression "((pbVar6[1] & 2) != 0)" (( "(") (binary_expression "(pbVar6[1] & 2) != 0" (parenthesized_expression "(pbVar6[1] & 2)" (( "(") (binary_expression "pbVar6[1] & 2" (subscript_expression "pbVar6[1]" (identifier "pbVar6") ([ "[") (number_literal "1") (] "]")) (& "&") (number_literal "2")) () ")")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00041fc0;" (goto "goto") (statement_identifier "LAB_00041fc0") (; ";")))) (labeled_statement "LAB_00041dc6:\n    pbVar5 = pbVar6;" (statement_identifier "LAB_00041dc6") (: ":") (expression_statement "pbVar5 = pbVar6;" (assignment_expression "pbVar5 = pbVar6" (identifier "pbVar5") (= "=") (identifier "pbVar6")) (; ";"))) (if_statement "if ((pbVar6[1] & 4) != 0) {\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }" (if "if") (parenthesized_expression "((pbVar6[1] & 4) != 0)" (( "(") (binary_expression "(pbVar6[1] & 4) != 0" (parenthesized_expression "(pbVar6[1] & 4)" (( "(") (binary_expression "pbVar6[1] & 4" (subscript_expression "pbVar6[1]" (identifier "pbVar6") ([ "[") (number_literal "1") (] "]")) (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);\n      pbVar5 = pbVar6;\n      if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }\n    }" ({ "{") (labeled_statement "LAB_00041ff8:\n      fwrite(" weakrefd",1,9,param_1);" (statement_identifier "LAB_00041ff8") (: ":") (expression_statement "fwrite(" weakrefd",1,9,param_1);" (call_expression "fwrite(" weakrefd",1,9,param_1)" (identifier "fwrite") (argument_list "(" weakrefd",1,9,param_1)" (( "(") (string_literal "" weakrefd"" (" """) (string_content " weakrefd") (" """)) (, ",") (number_literal "1") (, ",") (number_literal "9") (, ",") (identifier "param_1") () ")"))) (; ";"))) (expression_statement "pbVar5 = pbVar6;" (assignment_expression "pbVar5 = pbVar6" (identifier "pbVar5") (= "=") (identifier "pbVar6")) (; ";")) (if_statement "if ((*pbVar6 & 1) != 0) {\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }" (if "if") (parenthesized_expression "((*pbVar6 & 1) != 0)" (( "(") (binary_expression "(*pbVar6 & 1) != 0" (parenthesized_expression "(*pbVar6 & 1)" (( "(") (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6")) (& "&") (number_literal "1")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\n        puVar3 = *(undefined4 **)(pbVar6 + 4);\n        if (DAT_00081410 == puVar3) goto LAB_00042102;\n        goto LAB_00041dd8;\n      }" ({ "{") (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" (identifier "puVar3") (= "=") (pointer_expression "*(undefined4 **)(pbVar6 + 4)" (* "*") (cast_expression "(undefined4 **)(pbVar6 + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pbVar6 + 4)" (( "(") (binary_expression "pbVar6 + 4" (identifier "pbVar6") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (if_statement "if (DAT_00081410 == puVar3) goto LAB_00042102;" (if "if") (parenthesized_expression "(DAT_00081410 == puVar3)" (( "(") (binary_expression "DAT_00081410 == puVar3" (identifier "DAT_00081410") (== "==") (identifier "puVar3")) () ")")) (goto_statement "goto LAB_00042102;" (goto "goto") (statement_identifier "LAB_00042102") (; ";"))) (goto_statement "goto LAB_00041dd8;" (goto "goto") (statement_identifier "LAB_00041dd8") (; ";")) (} "}"))) (} "}"))) (labeled_statement "LAB_00041dd2:\n    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);" (statement_identifier "LAB_00041dd2") (: ":") (expression_statement "puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);" (assignment_expression "puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" (identifier "puVar3") (= "=") (pointer_expression "*(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" (* "*") (cast_expression "(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(pbVar5 + 4) + 0x14)" (( "(") (binary_expression "*(int *)(pbVar5 + 4) + 0x14" (pointer_expression "*(int *)(pbVar5 + 4)" (* "*") (cast_expression "(int *)(pbVar5 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar5 + 4)" (( "(") (binary_expression "pbVar5 + 4" (identifier "pbVar5") (+ "+") (number_literal "4")) () ")")))) (+ "+") (number_literal "0x14")) () ")"))))) (; ";"))) (} "}")))) (labeled_statement "LAB_00041dd8:\n  fprintf(param_1," %s",*puVar3);" (statement_identifier "LAB_00041dd8") (: ":") (expression_statement "fprintf(param_1," %s",*puVar3);" (call_expression "fprintf(param_1," %s",*puVar3)" (identifier "fprintf") (argument_list "(param_1," %s",*puVar3)" (( "(") (identifier "param_1") (, ",") (string_literal "" %s"" (" """) (string_content " %s") (" """)) (, ",") (pointer_expression "*puVar3" (* "*") (identifier "puVar3")) () ")"))) (; ";"))) (expression_statement "bVar1 = *pbVar6;" (assignment_expression "bVar1 = *pbVar6" (identifier "bVar1") (= "=") (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6"))) (; ";")) (if_statement "if ((bVar1 & 1) == 0) {\n    pbVar5 = pbVar6;\n    if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n    iVar2 = *(int *)(pbVar6 + 4);\nLAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);\n  }\n  else {\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }" (if "if") (parenthesized_expression "((bVar1 & 1) == 0)" (( "(") (binary_expression "(bVar1 & 1) == 0" (parenthesized_expression "(bVar1 & 1)" (( "(") (binary_expression "bVar1 & 1" (identifier "bVar1") (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    pbVar5 = pbVar6;\n    if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n    iVar2 = *(int *)(pbVar6 + 4);\nLAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);\n  }" ({ "{") (expression_statement "pbVar5 = pbVar6;" (assignment_expression "pbVar5 = pbVar6" (identifier "pbVar5") (= "=") (identifier "pbVar6")) (; ";")) (if_statement "if ((bVar1 & 4) != 0) {\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }" (if "if") (parenthesized_expression "((bVar1 & 4) != 0)" (( "(") (binary_expression "(bVar1 & 4) != 0" (parenthesized_expression "(bVar1 & 4)" (( "(") (binary_expression "bVar1 & 4" (identifier "bVar1") (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (compound_statement "{\nLAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);\nLAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }\n      goto LAB_00041e47;\n    }" ({ "{") (labeled_statement "LAB_00041ea6:\n      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);" (statement_identifier "LAB_00041ea6") (: ":") (expression_statement "puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);" (assignment_expression "puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" (identifier "puVar3") (= "=") (pointer_expression "*(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" (* "*") (cast_expression "(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(int *)(pbVar5 + 4) + 0x14)" (( "(") (binary_expression "*(int *)(pbVar5 + 4) + 0x14" (pointer_expression "*(int *)(pbVar5 + 4)" (* "*") (cast_expression "(int *)(pbVar5 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar5 + 4)" (( "(") (binary_expression "pbVar5 + 4" (identifier "pbVar5") (+ "+") (number_literal "4")) () ")")))) (+ "+") (number_literal "0x14")) () ")"))))) (; ";"))) (labeled_statement "LAB_00041e13:\n      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }" (statement_identifier "LAB_00041e13") (: ":") (if_statement "if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)) {\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }" (if "if") (parenthesized_expression "((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3))" (( "(") (binary_expression "(puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&\n         (DAT_00081360 != puVar3)" (parenthesized_expression "(puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0))" (( "(") (binary_expression "puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" (identifier "puVar3") (!= "!=") (cast_expression "(undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR__bfd_std_section_00077fa0 + 0xc0)" (( "(") (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" (identifier "PTR__bfd_std_section_00077fa0") (+ "+") (number_literal "0xc0")) () ")")))) () ")")) (&& "&&") (parenthesized_expression "(DAT_00081360 != puVar3)" (( "(") (binary_expression "DAT_00081360 != puVar3" (identifier "DAT_00081360") (!= "!=") (identifier "puVar3")) () ")"))) () ")")) (compound_statement "{\n        uVar4 = FUN_0003f930();\n        fprintf(param_1," %lx",uVar4);\n      }" ({ "{") (expression_statement "uVar4 = FUN_0003f930();" (assignment_expression "uVar4 = FUN_0003f930()" (identifier "uVar4") (= "=") (call_expression "FUN_0003f930()" (identifier "FUN_0003f930") (argument_list "()" (( "(") () ")")))) (; ";")) (expression_statement "fprintf(param_1," %lx",uVar4);" (call_expression "fprintf(param_1," %lx",uVar4)" (identifier "fprintf") (argument_list "(param_1," %lx",uVar4)" (( "(") (identifier "param_1") (, ",") (string_literal "" %lx"" (" """) (string_content " %lx") (" """)) (, ",") (identifier "uVar4") () ")"))) (; ";")) (} "}")))) (goto_statement "goto LAB_00041e47;" (goto "goto") (statement_identifier "LAB_00041e47") (; ";")) (} "}"))) (if_statement "if (7 < DAT_0008164c) goto LAB_00041e47;" (if "if") (parenthesized_expression "(7 < DAT_0008164c)" (( "(") (binary_expression "7 < DAT_0008164c" (number_literal "7") (< "<") (identifier "DAT_0008164c")) () ")")) (goto_statement "goto LAB_00041e47;" (goto "goto") (statement_identifier "LAB_00041e47") (; ";"))) (expression_statement "iVar2 = *(int *)(pbVar6 + 4);" (assignment_expression "iVar2 = *(int *)(pbVar6 + 4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pbVar6 + 4)" (* "*") (cast_expression "(int *)(pbVar6 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar6 + 4)" (( "(") (binary_expression "pbVar6 + 4" (identifier "pbVar6") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (labeled_statement "LAB_00041ec8:\n    puVar3 = *(undefined4 **)(iVar2 + 0x14);" (statement_identifier "LAB_00041ec8") (: ":") (expression_statement "puVar3 = *(undefined4 **)(iVar2 + 0x14);" (assignment_expression "puVar3 = *(undefined4 **)(iVar2 + 0x14)" (identifier "puVar3") (= "=") (pointer_expression "*(undefined4 **)(iVar2 + 0x14)" (* "*") (cast_expression "(undefined4 **)(iVar2 + 0x14)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(iVar2 + 0x14)" (( "(") (binary_expression "iVar2 + 0x14" (identifier "iVar2") (+ "+") (number_literal "0x14")) () ")"))))) (; ";"))) (} "}")) (else_clause "else {\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }" (else "else") (compound_statement "{\n    puVar3 = *(undefined4 **)(pbVar6 + 4);\n    if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }\n    if ((bVar1 & 4) != 0) goto LAB_00041e13;\n    if (7 < DAT_0008164c) goto LAB_00041e47;\n  }" ({ "{") (expression_statement "puVar3 = *(undefined4 **)(pbVar6 + 4);" (assignment_expression "puVar3 = *(undefined4 **)(pbVar6 + 4)" (identifier "puVar3") (= "=") (pointer_expression "*(undefined4 **)(pbVar6 + 4)" (* "*") (cast_expression "(undefined4 **)(pbVar6 + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pbVar6 + 4)" (( "(") (binary_expression "pbVar6 + 4" (identifier "pbVar6") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (if_statement "if (puVar3 == DAT_00081410) {\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }" (if "if") (parenthesized_expression "(puVar3 == DAT_00081410)" (( "(") (binary_expression "puVar3 == DAT_00081410" (identifier "puVar3") (== "==") (identifier "DAT_00081410")) () ")")) (compound_statement "{\n      pbVar5 = *(byte **)(pbVar6 + 0xc);\n      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;\n      if (7 < DAT_0008164c) goto LAB_00041e47;\n      iVar2 = *(int *)(pbVar5 + 4);\n      goto LAB_00041ec8;\n    }" ({ "{") (expression_statement "pbVar5 = *(byte **)(pbVar6 + 0xc);" (assignment_expression "pbVar5 = *(byte **)(pbVar6 + 0xc)" (identifier "pbVar5") (= "=") (pointer_expression "*(byte **)(pbVar6 + 0xc)" (* "*") (cast_expression "(byte **)(pbVar6 + 0xc)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pbVar6 + 0xc)" (( "(") (binary_expression "pbVar6 + 0xc" (identifier "pbVar6") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (if_statement "if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;" (if "if") (parenthesized_expression "((*pbVar5 & 4) != 0)" (( "(") (binary_expression "(*pbVar5 & 4) != 0" (parenthesized_expression "(*pbVar5 & 4)" (( "(") (binary_expression "*pbVar5 & 4" (pointer_expression "*pbVar5" (* "*") (identifier "pbVar5")) (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00041ea6;" (goto "goto") (statement_identifier "LAB_00041ea6") (; ";"))) (if_statement "if (7 < DAT_0008164c) goto LAB_00041e47;" (if "if") (parenthesized_expression "(7 < DAT_0008164c)" (( "(") (binary_expression "7 < DAT_0008164c" (number_literal "7") (< "<") (identifier "DAT_0008164c")) () ")")) (goto_statement "goto LAB_00041e47;" (goto "goto") (statement_identifier "LAB_00041e47") (; ";"))) (expression_statement "iVar2 = *(int *)(pbVar5 + 4);" (assignment_expression "iVar2 = *(int *)(pbVar5 + 4)" (identifier "iVar2") (= "=") (pointer_expression "*(int *)(pbVar5 + 4)" (* "*") (cast_expression "(int *)(pbVar5 + 4)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar5 + 4)" (( "(") (binary_expression "pbVar5 + 4" (identifier "pbVar5") (+ "+") (number_literal "4")) () ")"))))) (; ";")) (goto_statement "goto LAB_00041ec8;" (goto "goto") (statement_identifier "LAB_00041ec8") (; ";")) (} "}"))) (if_statement "if ((bVar1 & 4) != 0) goto LAB_00041e13;" (if "if") (parenthesized_expression "((bVar1 & 4) != 0)" (( "(") (binary_expression "(bVar1 & 4) != 0" (parenthesized_expression "(bVar1 & 4)" (( "(") (binary_expression "bVar1 & 4" (identifier "bVar1") (& "&") (number_literal "4")) () ")")) (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00041e13;" (goto "goto") (statement_identifier "LAB_00041e13") (; ";"))) (if_statement "if (7 < DAT_0008164c) goto LAB_00041e47;" (if "if") (parenthesized_expression "(7 < DAT_0008164c)" (( "(") (binary_expression "7 < DAT_0008164c" (number_literal "7") (< "<") (identifier "DAT_0008164c")) () ")")) (goto_statement "goto LAB_00041e47;" (goto "goto") (statement_identifier "LAB_00041e47") (; ";"))) (} "}")))) (if_statement "if (puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;" (if "if") (parenthesized_expression "(puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0))" (( "(") (binary_expression "puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" (identifier "puVar3") (== "==") (cast_expression "(undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(PTR__bfd_std_section_00077fa0 + 0xc0)" (( "(") (binary_expression "PTR__bfd_std_section_00077fa0 + 0xc0" (identifier "PTR__bfd_std_section_00077fa0") (+ "+") (number_literal "0xc0")) () ")")))) () ")")) (goto_statement "goto LAB_00041e47;" (goto "goto") (statement_identifier "LAB_00041e47") (; ";"))) (expression_statement "DAT_0008164c = DAT_0008164c + 1;" (assignment_expression "DAT_0008164c = DAT_0008164c + 1" (identifier "DAT_0008164c") (= "=") (binary_expression "DAT_0008164c + 1" (identifier "DAT_0008164c") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "puVar8 = &DAT_00057aaa;" (assignment_expression "puVar8 = &DAT_00057aaa" (identifier "puVar8") (= "=") (pointer_expression "&DAT_00057aaa" (& "&") (identifier "DAT_00057aaa"))) (; ";")) (expression_statement "fprintf(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa);" (call_expression "fprintf(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa)" (identifier "fprintf") (argument_list "(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa)" (( "(") (identifier "param_1") (, ",") (string_literal ""\n%*s<"" (" """) (escape_sequence "\n") (string_content "%*s<") (" """)) (, ",") (binary_expression "DAT_0008164c * 4" (identifier "DAT_0008164c") (* "*") (number_literal "4")) (, ",") (pointer_expression "&DAT_00057aaa" (& "&") (identifier "DAT_00057aaa")) () ")"))) (; ";")) (if_statement "if ((*pbVar6 & 1) == 0) {\nLAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);\n  }\n  else {\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }" (if "if") (parenthesized_expression "((*pbVar6 & 1) == 0)" (( "(") (binary_expression "(*pbVar6 & 1) == 0" (parenthesized_expression "(*pbVar6 & 1)" (( "(") (binary_expression "*pbVar6 & 1" (pointer_expression "*pbVar6" (* "*") (identifier "pbVar6")) (& "&") (number_literal "1")) () ")")) (== "==") (number_literal "0")) () ")")) (compound_statement "{\nLAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);\n  }" ({ "{") (labeled_statement "LAB_000421c3:\n    FUN_00041730(param_1,pbVar6 + 8);" (statement_identifier "LAB_000421c3") (: ":") (expression_statement "FUN_00041730(param_1,pbVar6 + 8);" (call_expression "FUN_00041730(param_1,pbVar6 + 8)" (identifier "FUN_00041730") (argument_list "(param_1,pbVar6 + 8)" (( "(") (identifier "param_1") (, ",") (binary_expression "pbVar6 + 8" (identifier "pbVar6") (+ "+") (number_literal "8")) () ")"))) (; ";"))) (} "}")) (else_clause "else {\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }" (else "else") (compound_statement "{\n    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }\n    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);\n  }" ({ "{") (if_statement "if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }" (if "if") (parenthesized_expression "(*(undefined4 **)(pbVar6 + 4) == DAT_00081410)" (( "(") (binary_expression "*(undefined4 **)(pbVar6 + 4) == DAT_00081410" (pointer_expression "*(undefined4 **)(pbVar6 + 4)" (* "*") (cast_expression "(undefined4 **)(pbVar6 + 4)" (( "(") (type_descriptor "undefined4 **" (type_identifier "undefined4") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pbVar6 + 4)" (( "(") (binary_expression "pbVar6 + 4" (identifier "pbVar6") (+ "+") (number_literal "4")) () ")")))) (== "==") (identifier "DAT_00081410")) () ")")) (compound_statement "{\n      pbVar6 = *(byte **)(pbVar6 + 0xc);\n      goto LAB_000421c3;\n    }" ({ "{") (expression_statement "pbVar6 = *(byte **)(pbVar6 + 0xc);" (assignment_expression "pbVar6 = *(byte **)(pbVar6 + 0xc)" (identifier "pbVar6") (= "=") (pointer_expression "*(byte **)(pbVar6 + 0xc)" (* "*") (cast_expression "(byte **)(pbVar6 + 0xc)" (( "(") (type_descriptor "byte **" (type_identifier "byte") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(pbVar6 + 0xc)" (( "(") (binary_expression "pbVar6 + 0xc" (identifier "pbVar6") (+ "+") (number_literal "0xc")) () ")"))))) (; ";")) (goto_statement "goto LAB_000421c3;" (goto "goto") (statement_identifier "LAB_000421c3") (; ";")) (} "}"))) (expression_statement "fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);" (call_expression "fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8)" (identifier "fprintf") (argument_list "(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8)" (( "(") (identifier "param_1") (, ",") (string_literal ""constant %lx"" (" """) (string_content "constant %lx") (" """)) (, ",") (pointer_expression "*(undefined4 *)(pbVar6 + 0x10)" (* "*") (cast_expression "(undefined4 *)(pbVar6 + 0x10)" (( "(") (type_descriptor "undefined4 *" (type_identifier "undefined4") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(pbVar6 + 0x10)" (( "(") (binary_expression "pbVar6 + 0x10" (identifier "pbVar6") (+ "+") (number_literal "0x10")) () ")")))) (, ",") (identifier "puVar8") () ")"))) (; ";")) (} "}")))) (expression_statement "fputc(0x3e,param_1);" (call_expression "fputc(0x3e,param_1)" (identifier "fputc") (argument_list "(0x3e,param_1)" (( "(") (number_literal "0x3e") (, ",") (identifier "param_1") () ")"))) (; ";")) (expression_statement "DAT_0008164c = DAT_0008164c + -1;" (assignment_expression "DAT_0008164c = DAT_0008164c + -1" (identifier "DAT_0008164c") (= "=") (binary_expression "DAT_0008164c + -1" (identifier "DAT_0008164c") (+ "+") (number_literal "-1"))) (; ";")) (labeled_statement "LAB_00041e47:\n  fflush(param_1);" (statement_identifier "LAB_00041e47") (: ":") (expression_statement "fflush(param_1);" (call_expression "fflush(param_1)" (identifier "fflush") (argument_list "(param_1)" (( "(") (identifier "param_1") () ")"))) (; ";"))) (return_statement "return;" (return "return") (; ";")) (} "}")))

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

void function_1(type_1 *file,type_2 *sym)

{
  type_3 sVar1;
  type_4 var_6;
  int var_8;
  type_5 var_3;
  type_2 *psVar5;
  type_6 *paVar6;
  type_2 *var_1;
  type_7 vVar8;
  type_8 *puVar9;
  
  var_3 = (type_5)sym->bsym;
  if (((type_9)sym->sy_flags & 1) == 0) {
LAB_00041c16:
    var_1 = (type_2 *)var_3->id;
    if (var_1 == (type_2 *)0x0) goto LAB_00041c03;
LAB_00041c1d:
    if (*(char *)&var_1->sy_flags == '\0') {
      var_1 = (type_2 *)"(unnamed)";
    }
  }
  else {
    if (var_2 == var_3) {
      var_3 = (type_5)((sym->sy_value).X_op_symbol)->bsym;
      goto LAB_00041c16;
    }
    var_1 = (sym->sy_value).X_add_symbol;
    if (var_1 != (type_2 *)0x0) goto LAB_00041c1d;
LAB_00041c03:
    var_1 = (type_2 *)"(unnamed)";
  }
  var_4(&DAT_0005bbc8,1,4,(type_1 *)file);
  var_5((type_1 *)file,"%016llx",sym,0);
  var_5((type_1 *)file," %s",var_1);
  var_6 = *(type_4 *)&sym->sy_flags;
  var_1 = sym;
  if (((var_6 & 1) == 0) || (var_1 = (sym->sy_value).X_op_symbol, (type_5)sym->bsym == var_2))
  {
    if (var_1->sy_frag != &zero_address_frag) {
      var_4(" frag ",1,6,(type_1 *)file);
      var_5((type_1 *)file,"%016llx",var_1->sy_frag,0);
    }
    var_6 = *(type_4 *)&var_1->sy_flags;
    if ((var_6 & 2) != 0) {
      var_4(" written",1,8,(type_1 *)file);
      var_6 = *(type_4 *)&var_1->sy_flags;
    }
    if ((var_6 & 4) == 0) {
      if ((var_6 & 8) != 0) {
        var_4(" resolving",1,10,(type_1 *)file);
        var_6 = *(type_4 *)&var_1->sy_flags;
      }
    }
    else {
      var_4(" resolved",1,9,(type_1 *)file);
      var_6 = *(type_4 *)&var_1->sy_flags;
    }
    if ((var_6 & 0x10) == 0) {
      if ((var_6 & 0x20) == 0) goto LAB_00041d55;
LAB_00041eef:
      var_4(" used",1,5,(type_1 *)file);
      var_8 = var_7(var_1);
      if (var_8 != 0) goto LAB_00041f17;
LAB_00041d69:
      var_8 = var_9(var_1);
      if (var_8 == 0) goto LAB_00041d7d;
LAB_00041f3f:
      var_4(" extern",1,7,(type_1 *)file);
      var_8 = var_10(var_1);
    }
    else {
      var_4(" used-in-reloc",1,0xe,(type_1 *)file);
      if (((type_9)var_1->sy_flags & 0x20) != 0) goto LAB_00041eef;
LAB_00041d55:
      var_8 = var_7(var_1);
      if (var_8 == 0) goto LAB_00041d69;
LAB_00041f17:
      var_4(" local",1,6,(type_1 *)file);
      var_8 = var_9(var_1);
      if (var_8 != 0) goto LAB_00041f3f;
LAB_00041d7d:
      var_8 = var_10(var_1);
    }
    if (var_8 != 0) {
      var_4(&DAT_0005bc16,1,5,(type_1 *)file);
    }
    var_3 = (type_5)var_1->bsym;
    if (((type_9)var_1->sy_flags & 1) == 0) {
      if (((type_9)var_3->prev & 4) != 0) {
LAB_00042130:
        var_4(" debug",1,6,(type_1 *)file);
        var_3 = (type_5)var_1->bsym;
        if (((type_9)var_1->sy_flags & 1) != 0) {
          if (var_3 == var_2) {
            psVar5 = (var_1->sy_value).X_op_symbol;
            goto LAB_0004219c;
          }
          goto LAB_00041e70;
        }
      }
      if ((type_8 *)var_3->flags != var_11 + 0xc0) goto LAB_00041e84;
      goto LAB_00041dbc;
    }
    if (var_2 == var_3) {
      psVar5 = (var_1->sy_value).X_op_symbol;
      if ((psVar5->bsym->flags & 4) != 0) goto LAB_00042130;
LAB_0004219c:
      if (psVar5->bsym->section == (type_10 *)(var_11 + 0xc0))
      goto LAB_00041cce;
LAB_00041e84:
      var_4(" defined",1,8,(type_1 *)file);
      goto LAB_00041cce;
    }
LAB_00041e70:
    if (var_3 != (type_5)(var_11 + 0xc0)) goto LAB_00041e84;
LAB_00041ce2:
    if (var_2 == var_3) {
      if (((((var_1->sy_value).X_op_symbol)->sy_flags).field_0x1 & 2) != 0) {
LAB_00041fc0:
        var_4(" weakrefr",1,9,(type_1 *)file);
        if (((type_9)var_1->sy_flags & 1) == 0) goto LAB_00041dc6;
        var_3 = (type_5)var_1->bsym;
        if (var_2 != var_3) goto LAB_00041dd8;
      }
      if (((((var_1->sy_value).X_op_symbol)->sy_flags).field_0x1 & 4) != 0) goto LAB_00041ff8;
LAB_00042102:
      psVar5 = (var_1->sy_value).X_op_symbol;
      goto LAB_00041dd2;
    }
  }
  else {
    if ((var_1 != (type_2 *)0x0) && (var_1 != (type_2 *)PTR_zero_address_frag_00077f60)) {
      var_4(" frag ",1,6,(type_1 *)file);
      var_5((type_1 *)file,"%016llx",(sym->sy_value).X_op_symbol,0);
      var_6 = *(type_4 *)&sym->sy_flags;
    }
    if ((var_6 & 4) != 0) {
      var_4(" resolved",1,9,(type_1 *)file);
    }
    var_4(" local",1,6,(type_1 *)file);
    var_1 = sym;
LAB_00041cce:
    if (((type_9)var_1->sy_flags & 1) != 0) {
      var_3 = (type_5)var_1->bsym;
      goto LAB_00041ce2;
    }
LAB_00041dbc:
    if (((var_1->sy_flags).field_0x1 & 2) != 0) goto LAB_00041fc0;
LAB_00041dc6:
    psVar5 = var_1;
    if (((var_1->sy_flags).field_0x1 & 4) != 0) {
LAB_00041ff8:
      var_4(" weakrefd",1,9,(type_1 *)file);
      psVar5 = var_1;
      if (((type_9)var_1->sy_flags & 1) != 0) {
        var_3 = (type_5)var_1->bsym;
        if (var_2 == var_3) goto LAB_00042102;
        goto LAB_00041dd8;
      }
    }
LAB_00041dd2:
    var_3 = psVar5->bsym->section;
  }
LAB_00041dd8:
  var_5((type_1 *)file," %s",var_3->name);
  sVar1 = var_1->sy_flags;
  if (((type_9)sVar1 & 1) == 0) {
    psVar5 = var_1;
    if (((type_9)sVar1 & 4) != 0) {
LAB_00041ea6:
      var_3 = psVar5->bsym->section;
LAB_00041e13:
      if ((var_3 != (type_5)(var_11 + 0xc0)) && (var_12 != var_3)) {
        vVar8 = var_13(var_1);
        var_5((type_1 *)file," %lx",(int)vVar8);
      }
      goto LAB_00041e47;
    }
    if (7 < var_14) goto LAB_00041e47;
    paVar6 = var_1->bsym;
LAB_00041ec8:
    var_3 = paVar6->section;
  }
  else {
    var_3 = (type_5)var_1->bsym;
    if (var_3 == var_2) {
      psVar5 = (var_1->sy_value).X_op_symbol;
      if (((type_9)psVar5->sy_flags & 4) != 0) goto LAB_00041ea6;
      if (7 < var_14) goto LAB_00041e47;
      paVar6 = psVar5->bsym;
      goto LAB_00041ec8;
    }
    if (((type_9)sVar1 & 4) != 0) goto LAB_00041e13;
    if (7 < var_14) goto LAB_00041e47;
  }
  if (var_3 == (type_5)(var_11 + 0xc0)) goto LAB_00041e47;
  var_14 = var_14 + 1;
  puVar9 = &DAT_00057aaa;
  var_5((type_1 *)file,"\n%*s<",var_14 * 4,&DAT_00057aaa);
  if (((type_9)var_1->sy_flags & 1) == 0) {
LAB_000421c3:
    var_15(file,&var_1->sy_value);
  }
  else {
    if ((type_5)var_1->bsym == var_2) {
      var_1 = (var_1->sy_value).X_op_symbol;
      goto LAB_000421c3;
    }
    var_5((type_1 *)file,"constant %lx",(int)(var_1->sy_value).X_add_number,puVar9);
  }
  var_16(0x3e,(type_1 *)file);
  var_14 = var_14 + -1;
LAB_00041e47:
  var_17((type_1 *)file);
  return;
}


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

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

void MASKED(FILE *param_1,byte *param_2)

{
  byte bVar1;
  int iVar2;
  undefined4 *puVar3;
  undefined4 uVar4;
  byte *pbVar5;
  byte *pbVar6;
  char *pcVar7;
  undefined *puVar8;
  
  puVar3 = *(undefined4 **)(param_2 + 4);
  if ((*param_2 & 1) == 0) {
LAB_00041c16:
    pcVar7 = (char *)puVar3[1];
    if (pcVar7 == (char *)0x0) goto LAB_00041c03;
LAB_00041c1d:
    if (*pcVar7 == '\0') {
      pcVar7 = "(unnamed)";
    }
  }
  else {
    if (DAT_00081410 == puVar3) {
      puVar3 = *(undefined4 **)(*(int *)(param_2 + 0xc) + 4);
      goto LAB_00041c16;
    }
    pcVar7 = *(char **)(param_2 + 8);
    if (pcVar7 != (char *)0x0) goto LAB_00041c1d;
LAB_00041c03:
    pcVar7 = "(unnamed)";
  }
  fwrite(&DAT_0005bbc8,1,4,param_1);
  fprintf(param_1,"%016llx",param_2,0);
  fprintf(param_1," %s",pcVar7);
  bVar1 = *param_2;
  pbVar6 = param_2;
  if (((bVar1 & 1) == 0) ||
     (pbVar6 = *(byte **)(param_2 + 0xc), *(undefined4 **)(param_2 + 4) == DAT_00081410)) {
    if (*(undefined4 **)(pbVar6 + 0x24) != &DAT_000813a0) {
      fwrite(" frag ",1,6,param_1);
      fprintf(param_1,"%016llx",*(undefined4 *)(pbVar6 + 0x24),0);
    }
    bVar1 = *pbVar6;
    if ((bVar1 & 2) != 0) {
      fwrite(" written",1,8,param_1);
      bVar1 = *pbVar6;
    }
    if ((bVar1 & 4) == 0) {
      if ((bVar1 & 8) != 0) {
        fwrite(" resolving",1,10,param_1);
        bVar1 = *pbVar6;
      }
    }
    else {
      fwrite(" resolved",1,9,param_1);
      bVar1 = *pbVar6;
    }
    if ((bVar1 & 0x10) == 0) {
      if ((bVar1 & 0x20) == 0) goto LAB_00041d55;
LAB_00041eef:
      fwrite(" used",1,5,param_1);
      iVar2 = FUN_0003df00(pbVar6);
      if (iVar2 != 0) goto LAB_00041f17;
LAB_00041d69:
      iVar2 = FUN_0003dc20(pbVar6);
      if (iVar2 == 0) goto LAB_00041d7d;
LAB_00041f3f:
      fwrite(" extern",1,7,param_1);
      iVar2 = FUN_0003dc90(pbVar6);
    }
    else {
      fwrite(" used-in-reloc",1,0xe,param_1);
      if ((*pbVar6 & 0x20) != 0) goto LAB_00041eef;
LAB_00041d55:
      iVar2 = FUN_0003df00(pbVar6);
      if (iVar2 == 0) goto LAB_00041d69;
LAB_00041f17:
      fwrite(" local",1,6,param_1);
      iVar2 = FUN_0003dc20(pbVar6);
      if (iVar2 != 0) goto LAB_00041f3f;
LAB_00041d7d:
      iVar2 = FUN_0003dc90(pbVar6);
    }
    if (iVar2 != 0) {
      fwrite(" weak",1,5,param_1);
    }
    puVar3 = *(undefined4 **)(pbVar6 + 4);
    if ((*pbVar6 & 1) == 0) {
      if ((*(byte *)(puVar3 + 4) & 4) != 0) {
LAB_00042130:
        fwrite(" debug",1,6,param_1);
        puVar3 = *(undefined4 **)(pbVar6 + 4);
        if ((*pbVar6 & 1) != 0) {
          if (puVar3 == DAT_00081410) {
            iVar2 = *(int *)(pbVar6 + 0xc);
            goto LAB_0004219c;
          }
          goto LAB_00041e70;
        }
      }
      if ((undefined *)puVar3[5] != PTR__bfd_std_section_00077fa0 + 0xc0) goto LAB_00041e84;
      goto LAB_00041dbc;
    }
    if (DAT_00081410 == puVar3) {
      iVar2 = *(int *)(pbVar6 + 0xc);
      if ((*(byte *)(*(int *)(iVar2 + 4) + 0x10) & 4) != 0) goto LAB_00042130;
LAB_0004219c:
      if (*(undefined **)(*(int *)(iVar2 + 4) + 0x14) == PTR__bfd_std_section_00077fa0 + 0xc0)
      goto LAB_00041cce;
LAB_00041e84:
      fwrite(" defined",1,8,param_1);
      goto LAB_00041cce;
    }
LAB_00041e70:
    if (puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e84;
LAB_00041ce2:
    if (DAT_00081410 == puVar3) {
      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 2) != 0) {
LAB_00041fc0:
        fwrite(" weakrefr",1,9,param_1);
        if ((*pbVar6 & 1) == 0) goto LAB_00041dc6;
        puVar3 = *(undefined4 **)(pbVar6 + 4);
        if (DAT_00081410 != puVar3) goto LAB_00041dd8;
      }
      if ((*(byte *)(*(int *)(pbVar6 + 0xc) + 1) & 4) != 0) goto LAB_00041ff8;
LAB_00042102:
      pbVar5 = *(byte **)(pbVar6 + 0xc);
      goto LAB_00041dd2;
    }
  }
  else {
    if ((pbVar6 != (byte *)0x0) && (pbVar6 != PTR_DAT_00077f60)) {
      fwrite(" frag ",1,6,param_1);
      fprintf(param_1,"%016llx",*(undefined4 *)(param_2 + 0xc),0);
      bVar1 = *param_2;
    }
    if ((bVar1 & 4) != 0) {
      fwrite(" resolved",1,9,param_1);
    }
    fwrite(" local",1,6,param_1);
    pbVar6 = param_2;
LAB_00041cce:
    if ((*pbVar6 & 1) != 0) {
      puVar3 = *(undefined4 **)(pbVar6 + 4);
      goto LAB_00041ce2;
    }
LAB_00041dbc:
    if ((pbVar6[1] & 2) != 0) goto LAB_00041fc0;
LAB_00041dc6:
    pbVar5 = pbVar6;
    if ((pbVar6[1] & 4) != 0) {
LAB_00041ff8:
      fwrite(" weakrefd",1,9,param_1);
      pbVar5 = pbVar6;
      if ((*pbVar6 & 1) != 0) {
        puVar3 = *(undefined4 **)(pbVar6 + 4);
        if (DAT_00081410 == puVar3) goto LAB_00042102;
        goto LAB_00041dd8;
      }
    }
LAB_00041dd2:
    puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);
  }
LAB_00041dd8:
  fprintf(param_1," %s",*puVar3);
  bVar1 = *pbVar6;
  if ((bVar1 & 1) == 0) {
    pbVar5 = pbVar6;
    if ((bVar1 & 4) != 0) {
LAB_00041ea6:
      puVar3 = *(undefined4 **)(*(int *)(pbVar5 + 4) + 0x14);
LAB_00041e13:
      if ((puVar3 != (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) &&
         (DAT_00081360 != puVar3)) {
        uVar4 = FUN_0003f930();
        fprintf(param_1," %lx",uVar4);
      }
      goto LAB_00041e47;
    }
    if (7 < DAT_0008164c) goto LAB_00041e47;
    iVar2 = *(int *)(pbVar6 + 4);
LAB_00041ec8:
    puVar3 = *(undefined4 **)(iVar2 + 0x14);
  }
  else {
    puVar3 = *(undefined4 **)(pbVar6 + 4);
    if (puVar3 == DAT_00081410) {
      pbVar5 = *(byte **)(pbVar6 + 0xc);
      if ((*pbVar5 & 4) != 0) goto LAB_00041ea6;
      if (7 < DAT_0008164c) goto LAB_00041e47;
      iVar2 = *(int *)(pbVar5 + 4);
      goto LAB_00041ec8;
    }
    if ((bVar1 & 4) != 0) goto LAB_00041e13;
    if (7 < DAT_0008164c) goto LAB_00041e47;
  }
  if (puVar3 == (undefined4 *)(PTR__bfd_std_section_00077fa0 + 0xc0)) goto LAB_00041e47;
  DAT_0008164c = DAT_0008164c + 1;
  puVar8 = &DAT_00057aaa;
  fprintf(param_1,"\n%*s<",DAT_0008164c * 4,&DAT_00057aaa);
  if ((*pbVar6 & 1) == 0) {
LAB_000421c3:
    FUN_00041730(param_1,pbVar6 + 8);
  }
  else {
    if (*(undefined4 **)(pbVar6 + 4) == DAT_00081410) {
      pbVar6 = *(byte **)(pbVar6 + 0xc);
      goto LAB_000421c3;
    }
    fprintf(param_1,"constant %lx",*(undefined4 *)(pbVar6 + 0x10),puVar8);
  }
  fputc(0x3e,param_1);
  DAT_0008164c = DAT_0008164c + -1;
LAB_00041e47:
  fflush(param_1);
  return;
}

