
/* WARNING: Unknown calling convention -- yet parameter storage is locked */

void cg_print_index(void)

{
  uint uVar1;
  Sym *pSVar2;
  int iVar3;
  int iVar4;
  bfd_boolean bVar5;
  Sym *pSVar6;
  int iVar7;
  void *__base;
  Sym *pSVar8;
  char *pcVar9;
  char *pcVar10;
  size_t sVar11;
  uint *puVar12;
  uint *puVar13;
  uint uVar14;
  int iVar15;
  ulong uVar16;
  uint uVar17;
  Sym *pSVar18;
  int iVar19;
  uint uVar20;
  bool bVar21;
  uint local_70;
  uint local_68;
  uint local_60;
  char buf [20];
  
  iVar4 = (output_width + -1) / 3;
  __base = (void *)xmalloc((ulong)(num_cycles + symtab.len) << 3);
  bVar5 = ignore_zeros;
  local_68 = symtab.len;
  if (symtab.len == 0) {
    qsort(__base,0,8,cmp_name);
    if (num_cycles == 0) {
      puts("\f");
      pcVar9 = (char *)dcgettext("gprof","Index by function name\n\n",5);
      printf(pcVar9);
      goto LAB_00107070;
    }
LAB_00106eaa:
    uVar1 = num_cycles;
    pSVar2 = cycle_header;
    uVar16 = 1;
    uVar20 = local_68;
    do {
      local_70 = uVar20 + 1;
      uVar14 = (int)uVar16 + 1;
      *(Sym **)((long)__base + (ulong)uVar20 * 8) = pSVar2 + uVar16;
      uVar16 = (ulong)uVar14;
      uVar20 = local_70;
    } while (uVar14 <= uVar1);
  }
  else {
    uVar1 = symtab.len - 1;
    local_70 = 0;
    pSVar2 = symtab.base + 1;
    pSVar6 = pSVar2;
    pSVar18 = symtab.base;
    while( true ) {
      pSVar8 = pSVar6;
      if (((bVar5 == 0) || (pSVar18->ncalls != 0)) || ((pSVar18->hist).time != 0.0)) {
        uVar16 = (ulong)local_70;
        local_70 = local_70 + 1;
        *(Sym **)((long)__base + uVar16 * 8) = pSVar18;
      }
      if (pSVar2 + uVar1 == pSVar8) break;
      pSVar6 = pSVar8 + 1;
      pSVar18 = pSVar8;
    }
    qsort(__base,(ulong)local_70,8,cmp_name);
    local_68 = local_70;
    if (num_cycles != 0) goto LAB_00106eaa;
  }
  puts("\f");
  pcVar9 = (char *)dcgettext("gprof","Index by function name\n\n",5);
  printf(pcVar9);
  local_60 = 0;
  uVar1 = (local_70 + 2) / 3;
  if (2 < local_70 + 2) {
    do {
      iVar19 = 5;
      iVar15 = 0;
      uVar20 = local_60;
joined_r0x00106f52:
      if (uVar20 < local_70) {
        do {
          pSVar2 = *(Sym **)((long)__base + (ulong)uVar20 * 8);
          uVar16 = (ulong)(uint)(pSVar2->cg).index;
          iVar7 = (int)buf;
          if ((pSVar2->cg).print_flag == 0) {
            sprintf(buf,"(%d)",uVar16);
            if (uVar20 < local_68) goto LAB_00106f7e;
LAB_00106fe6:
            puVar13 = (uint *)buf;
            if (bsd_style_output != 0) goto code_r0x00106fee;
            do {
              puVar12 = puVar13;
              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;
              uVar14 = uVar17 & 0x80808080;
              puVar13 = puVar12 + 1;
            } while (uVar14 == 0);
            bVar21 = (uVar17 & 0x8080) == 0;
            if (bVar21) {
              uVar14 = uVar14 >> 0x10;
            }
            if (bVar21) {
              puVar13 = (uint *)((long)puVar12 + 6);
            }
            iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -
                              iVar7);
            iVar3 = iVar15;
            if (iVar15 <= iVar19 + -1) {
              do {
                iVar15 = iVar15 + 1;
                putc(0x20,stdout);
                iVar3 = iVar19;
              } while (iVar19 != iVar15);
            }
            printf(" %s ",buf);
            uVar14 = (pSVar2->cg).cyc.num;
            pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);
            sprintf(buf,pcVar9,(ulong)uVar14);
            printf("%s",buf);
            puVar13 = (uint *)buf;
            do {
              puVar12 = puVar13;
              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;
              uVar14 = uVar17 & 0x80808080;
              puVar13 = puVar12 + 1;
            } while (uVar14 == 0);
            bVar21 = (uVar17 & 0x8080) == 0;
            if (bVar21) {
              uVar14 = uVar14 >> 0x10;
            }
            if (bVar21) {
              puVar13 = (uint *)((long)puVar12 + 6);
            }
            iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +
                     iVar3;
          }
          else {
            sprintf(buf,"[%d]",uVar16);
            if (local_68 <= uVar20) goto LAB_00106fe6;
LAB_00106f7e:
            puVar13 = (uint *)buf;
            if (bsd_style_output == 0) {
              do {
                puVar12 = puVar13;
                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;
                uVar14 = uVar17 & 0x80808080;
                puVar13 = puVar12 + 1;
              } while (uVar14 == 0);
              bVar21 = (uVar17 & 0x8080) == 0;
              if (bVar21) {
                uVar14 = uVar14 >> 0x10;
              }
              if (bVar21) {
                puVar13 = (uint *)((long)puVar12 + 6);
              }
              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -
                                iVar7);
              if (iVar15 <= iVar19 + -1) {
                do {
                  iVar15 = iVar15 + 1;
                  putc(0x20,stdout);
                } while (iVar15 != iVar19);
              }
              printf(" %s ",buf);
              iVar7 = print_name_only(pSVar2);
              iVar15 = iVar15 + iVar7;
              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&
                 (pSVar2->file != (Source_File *)0x0)) {
                pcVar9 = pSVar2->file->name;
                if (print_path == 0) {
                  pcVar10 = strrchr(pcVar9,0x2f);
                  if (pcVar10 != (char *)0x0) {
                    pcVar9 = pcVar10 + 1;
                  }
                }
                printf(" (%s)",pcVar9);
                sVar11 = strlen(pcVar9);
                iVar15 = iVar15 + 3 + (int)sVar11;
              }
            }
            else {
              printf("%6.6s %-19.19s",buf,pSVar2->name);
            }
          }
          uVar20 = uVar20 + uVar1;
          iVar19 = iVar19 + iVar4;
          if (local_70 <= uVar20) break;
        } while( true );
      }
      putchar(10);
      local_60 = local_60 + 1;
      if (uVar1 <= local_60) break;
    } while( true );
  }
LAB_00107070:
  free(__base);
  return;
code_r0x00106fee:
  printf("%6.6s ",buf);
  uVar14 = (pSVar2->cg).cyc.num;
  pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);
  sprintf(buf,pcVar9,(ulong)uVar14);
  printf("%-19.19s",buf);
  uVar20 = uVar20 + uVar1;
  iVar19 = iVar19 + iVar4;
  goto joined_r0x00106f52;
}



void FUN_00106dd0(void)

{
  uint uVar1;
  long lVar2;
  int iVar3;
  int iVar4;
  long lVar5;
  int iVar6;
  void *__base;
  long lVar7;
  char *pcVar8;
  char *pcVar9;
  size_t sVar10;
  uint *puVar11;
  uint *puVar12;
  uint uVar13;
  int iVar14;
  ulong uVar15;
  uint uVar16;
  long lVar17;
  int iVar18;
  uint uVar19;
  bool bVar20;
  uint local_70;
  uint local_68;
  uint local_60;
  uint local_58 [10];
  
  iVar4 = (DAT_001182e8 + -1) / 3;
  __base = (void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3);
  iVar18 = DAT_001182e0;
  local_68 = DAT_00119b30;
  if (DAT_00119b30 == 0) {
    qsort(__base,0,8,FUN_00106300);
    if (DAT_00119ad0 == 0) {
      puts("\f");
      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);
      printf(pcVar8);
      goto LAB_00107070;
    }
LAB_00106eaa:
    uVar1 = DAT_00119ad0;
    lVar2 = DAT_00119ac0;
    uVar15 = 1;
    uVar19 = local_68;
    do {
      local_70 = uVar19 + 1;
      uVar13 = (int)uVar15 + 1;
      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;
      uVar15 = (ulong)uVar13;
      uVar19 = local_70;
    } while (uVar13 <= uVar1);
  }
  else {
    uVar1 = DAT_00119b30 - 1;
    local_70 = 0;
    lVar2 = DAT_00119b38 + 0x158;
    lVar5 = lVar2;
    lVar17 = DAT_00119b38;
    while( true ) {
      lVar7 = lVar5;
      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))
      {
        uVar15 = (ulong)local_70;
        local_70 = local_70 + 1;
        *(long *)((long)__base + uVar15 * 8) = lVar17;
      }
      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;
      lVar5 = lVar7 + 0x158;
      lVar17 = lVar7;
    }
    qsort(__base,(ulong)local_70,8,FUN_00106300);
    local_68 = local_70;
    if (DAT_00119ad0 != 0) goto LAB_00106eaa;
  }
  puts("\f");
  pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);
  printf(pcVar8);
  local_60 = 0;
  uVar1 = (local_70 + 2) / 3;
  if (2 < local_70 + 2) {
    do {
      iVar18 = 5;
      iVar14 = 0;
      uVar19 = local_60;
joined_r0x00106f52:
      if (uVar19 < local_70) {
        do {
          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);
          iVar6 = (int)local_58;
          if (*(int *)(lVar2 + 0x110) == 0) {
            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));
            if (uVar19 < local_68) goto LAB_00106f7e;
LAB_00106fe6:
            puVar12 = local_58;
            if (DAT_001195dc != 0) goto code_r0x00106fee;
            do {
              puVar11 = puVar12;
              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;
              uVar13 = uVar16 & 0x80808080;
              puVar12 = puVar11 + 1;
            } while (uVar13 == 0);
            bVar20 = (uVar16 & 0x8080) == 0;
            if (bVar20) {
              uVar13 = uVar13 >> 0x10;
            }
            if (bVar20) {
              puVar12 = (uint *)((long)puVar11 + 6);
            }
            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -
                              iVar6);
            iVar3 = iVar14;
            if (iVar14 <= iVar18 + -1) {
              do {
                iVar14 = iVar14 + 1;
                putc(0x20,stdout);
                iVar3 = iVar18;
              } while (iVar18 != iVar14);
            }
            printf(" %s ",local_58);
            uVar13 = *(uint *)(lVar2 + 0x130);
            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);
            sprintf((char *)local_58,pcVar8,(ulong)uVar13);
            printf("%s",local_58);
            puVar12 = local_58;
            do {
              puVar11 = puVar12;
              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;
              uVar13 = uVar16 & 0x80808080;
              puVar12 = puVar11 + 1;
            } while (uVar13 == 0);
            bVar20 = (uVar16 & 0x8080) == 0;
            if (bVar20) {
              uVar13 = uVar13 >> 0x10;
            }
            if (bVar20) {
              puVar12 = (uint *)((long)puVar11 + 6);
            }
            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +
                     iVar3;
          }
          else {
            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));
            if (local_68 <= uVar19) goto LAB_00106fe6;
LAB_00106f7e:
            puVar12 = local_58;
            if (DAT_001195dc == 0) {
              do {
                puVar11 = puVar12;
                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;
                uVar13 = uVar16 & 0x80808080;
                puVar12 = puVar11 + 1;
              } while (uVar13 == 0);
              bVar20 = (uVar16 & 0x8080) == 0;
              if (bVar20) {
                uVar13 = uVar13 >> 0x10;
              }
              if (bVar20) {
                puVar12 = (uint *)((long)puVar11 + 6);
              }
              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -
                                iVar6);
              if (iVar14 <= iVar18 + -1) {
                do {
                  iVar14 = iVar14 + 1;
                  putc(0x20,stdout);
                } while (iVar14 != iVar18);
              }
              printf(" %s ",local_58);
              iVar6 = FUN_0010ce70(lVar2);
              iVar14 = iVar14 + iVar6;
              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&
                 (*(long *)(lVar2 + 0x18) != 0)) {
                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);
                if (DAT_001195cc == 0) {
                  pcVar9 = strrchr(pcVar8,0x2f);
                  if (pcVar9 != (char *)0x0) {
                    pcVar8 = pcVar9 + 1;
                  }
                }
                printf(" (%s)",pcVar8);
                sVar10 = strlen(pcVar8);
                iVar14 = iVar14 + 3 + (int)sVar10;
              }
            }
            else {
              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));
            }
          }
          uVar19 = uVar19 + uVar1;
          iVar18 = iVar18 + iVar4;
          if (local_70 <= uVar19) break;
        } while( true );
      }
      putchar(10);
      local_60 = local_60 + 1;
      if (uVar1 <= local_60) break;
    } while( true );
  }
LAB_00107070:
  free(__base);
  return;
code_r0x00106fee:
  printf("%6.6s ",local_58);
  uVar13 = *(uint *)(lVar2 + 0x130);
  pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);
  sprintf((char *)local_58,pcVar8,(ulong)uVar13);
  printf("%-19.19s",local_58);
  uVar19 = uVar19 + uVar1;
  iVar18 = iVar18 + iVar4;
  goto joined_r0x00106f52;
}


PUSH R15
MOV EDX,0x55555556
PUSH R14
PUSH R13
PUSH R12
PUSH RBP
PUSH RBX
SUB RSP,0x48
MOV EAX,dword ptr [0x001182e8]
MOV EDI,dword ptr [0x00119ad0]
ADD EDI,dword ptr [0x00119b30]
LEA ECX,[RAX + -0x1]
SHL RDI,0x3
MOV EAX,ECX
SAR ECX,0x1f
IMUL EDX
SUB EDX,ECX
MOV dword ptr [RSP + 0x14],EDX
CALL 0x00102240
MOV R15,RAX
MOV EAX,dword ptr [0x00119b30]
MOV dword ptr [RSP + 0x10],EAX
TEST EAX,EAX
JZ 0x00107299
LEA ESI,[RAX + -0x1]
MOV RDX,qword ptr [0x00119b38]
XOR ECX,ECX
PXOR XMM0,XMM0
IMUL RSI,RSI,0x158
MOV EDI,dword ptr [0x001182e0]
LEA RAX,[RDX + 0x158]
ADD RSI,RAX
JMP 0x00106e56
ADD RAX,0x158
TEST EDI,EDI
JZ 0x00106e70
CMP qword ptr [RDX + 0x28],0x0
JNZ 0x00106e70
UCOMISD XMM0,qword ptr [RDX + 0xe8]
JNP 0x0010728e
NOP
MOV R8D,ECX
ADD ECX,0x1
MOV qword ptr [R15 + R8*0x8],RDX
MOV RDX,RAX
CMP RSI,RAX
JNZ 0x00106e50
MOV ESI,ECX
MOV dword ptr [RSP + 0x10],ECX
MOV EDX,0x8
MOV RDI,R15
LEA RCX,[0x106300]
CALL 0x001020e0
MOV ESI,dword ptr [0x00119ad0]
TEST ESI,ESI
JZ 0x001072f0
MOV RDI,qword ptr [0x00119ac0]
MOV EAX,dword ptr [RSP + 0x10]
MOV ECX,0x1
NOP word ptr [RAX + RAX*0x1]
LEA R8D,[RAX + 0x1]
MOV EDX,EAX
MOV EAX,ECX
ADD ECX,0x1
IMUL RAX,RAX,0x158
ADD RAX,RDI
MOV qword ptr [R15 + RDX*0x8],RAX
MOV EAX,R8D
CMP ESI,ECX
JNC 0x00106ec0
MOV dword ptr [RSP + 0x8],R8D
LEA RDI,[0x11000e]
LEA R13,[RSP + 0x20]
CALL 0x001020c0
MOV EDX,0x5
LEA RSI,[0x110a4c]
LEA RDI,[0x110008]
CALL 0x00102170
MOV RDI,RAX
XOR EAX,EAX
CALL 0x001021c0
MOV EAX,dword ptr [RSP + 0x8]
MOV EDX,0xaaaaaaab
MOV dword ptr [RSP + 0x18],0x0
LEA ECX,[RAX + 0x2]
MOV EAX,ECX
MUL EDX
SHR EDX,0x1
MOV dword ptr [RSP + 0xc],EDX
CMP ECX,0x2
JBE 0x00107070
NOP
MOV EAX,dword ptr [RSP + 0x18]
MOV EBP,0x5
XOR EBX,EBX
MOV R12D,EAX
CMP dword ptr [RSP + 0x8],EAX
JA 0x00106faf
JMP 0x00107053
LEA RSI,[0x112280]
MOV RDI,R13
XOR EAX,EAX
CALL 0x00102440
MOV EAX,dword ptr [0x001195dc]
CMP dword ptr [RSP + 0x10],R12D
JBE 0x00106fe6
TEST EAX,EAX
JZ 0x00107090
MOV RDX,qword ptr [R14 + 0x10]
MOV RSI,R13
LEA RDI,[0x110a65]
XOR EAX,EAX
CALL 0x001021c0
ADD R12D,dword ptr [RSP + 0xc]
ADD EBP,dword ptr [RSP + 0x14]
CMP R12D,dword ptr [RSP + 0x8]
JNC 0x00107053
MOV EAX,R12D
MOV R14,qword ptr [R15 + RAX*0x8]
MOV ECX,dword ptr [R14 + 0x110]
MOV EDX,dword ptr [R14 + 0x108]
TEST ECX,ECX
JNZ 0x00106f60
LEA RSI,[0x112286]
MOV RDI,R13
XOR EAX,EAX
CALL 0x00102440
MOV EAX,dword ptr [0x001195dc]
CMP dword ptr [RSP + 0x10],R12D
JA 0x00106f7e
TEST EAX,EAX
JZ 0x00107188
MOV RSI,R13
LEA RDI,[0x110a7f]
XOR EAX,EAX
CALL 0x001021c0
MOV R14D,dword ptr [R14 + 0x130]
MOV EDX,0x5
LEA RSI,[0x112274]
LEA RDI,[0x110008]
CALL 0x00102170
MOV EDX,R14D
MOV RDI,R13
MOV RSI,RAX
XOR EAX,EAX
CALL 0x00102440
MOV RSI,R13
LEA RDI,[0x110a6b]
XOR EAX,EAX
CALL 0x001021c0
ADD R12D,dword ptr [RSP + 0xc]
ADD EBP,dword ptr [RSP + 0x14]
CMP R12D,dword ptr [RSP + 0x8]
JC 0x00106faf
MOV EDI,0xa
CALL 0x00102060
ADD dword ptr [RSP + 0x18],0x1
MOV EAX,dword ptr [RSP + 0x18]
CMP dword ptr [RSP + 0xc],EAX
JA 0x00106f40
ADD RSP,0x48
MOV RDI,R15
POP RBX
POP RBP
POP R12
POP R13
POP R14
POP R15
JMP 0x00102050
MOV RAX,R13
MOV ECX,dword ptr [RAX]
ADD RAX,0x4
LEA EDX,[RCX + -0x1010101]
NOT ECX
AND EDX,ECX
AND EDX,0x80808080
JZ 0x00107093
MOV ECX,EDX
SHR ECX,0x10
TEST EDX,0x8080
CMOVZ EDX,ECX
LEA RCX,[RAX + 0x2]
CMOVZ RAX,RCX
MOV EDI,EDX
ADD DIL,DL
SBB RAX,0x3
SUB RAX,R13
ADD EBX,EAX
LEA EAX,[RBP + -0x1]
CMP EBX,EAX
JG 0x001070f8
NOP word ptr CS:[RAX + RAX*0x1]
MOV RSI,qword ptr [0x00118900]
MOV EDI,0x20
ADD EBX,0x1
CALL 0x001022e0
CMP EBX,EBP
JNZ 0x001070e0
MOV RSI,R13
LEA RDI,[0x110a74]
XOR EAX,EAX
CALL 0x001021c0
MOV RDI,R14
CALL 0x0010ce70
MOV EDX,dword ptr [0x001195d0]
ADD EBX,EAX
TEST EDX,EDX
JNZ 0x00106f9b
TEST byte ptr [R14 + 0x24],0x2
JZ 0x00106f9b
MOV RAX,qword ptr [R14 + 0x18]
TEST RAX,RAX
JZ 0x00106f9b
MOV R14,qword ptr [RAX + 0x8]
MOV EAX,dword ptr [0x001195cc]
TEST EAX,EAX
JNZ 0x0010715f
MOV RDI,R14
MOV ESI,0x2f
CALL 0x001021f0
LEA RDX,[RAX + 0x1]
TEST RAX,RAX
CMOVNZ R14,RDX
MOV RSI,R14
LEA RDI,[0x110a79]
XOR EAX,EAX
CALL 0x001021c0
MOV RDI,R14
CALL 0x00102190
LEA EBX,[RBX + RAX*0x1 + 0x3]
JMP 0x00106f9b
MOV RAX,R13
MOV ECX,dword ptr [RAX]
ADD RAX,0x4
LEA EDX,[RCX + -0x1010101]
NOT ECX
AND EDX,ECX
AND EDX,0x80808080
JZ 0x0010718b
MOV ECX,EDX
SHR ECX,0x10
TEST EDX,0x8080
CMOVZ EDX,ECX
LEA RCX,[RAX + 0x2]
CMOVZ RAX,RCX
MOV EDI,EDX
ADD DIL,DL
SBB RAX,0x3
SUB RAX,R13
LEA ECX,[RBX + RAX*0x1]
LEA EAX,[RBP + -0x1]
MOV EBX,ECX
CMP EAX,ECX
JL 0x001071f2
NOP dword ptr [RAX]
MOV RSI,qword ptr [0x00118900]
MOV EDI,0x20
ADD EBX,0x1
CALL 0x001022e0
CMP EBP,EBX
JNZ 0x001071d8
MOV ECX,EBP
MOV RSI,R13
LEA RDI,[0x110a74]
XOR EAX,EAX
MOV dword ptr [RSP + 0x1c],ECX
CALL 0x001021c0
MOV R14D,dword ptr [R14 + 0x130]
MOV RBX,R13
MOV EDX,0x5
LEA RSI,[0x112274]
LEA RDI,[0x110008]
CALL 0x00102170
MOV EDX,R14D
MOV RDI,R13
MOV RSI,RAX
XOR EAX,EAX
CALL 0x00102440
MOV RSI,R13
LEA RDI,[0x11254a]
XOR EAX,EAX
CALL 0x001021c0
MOV ECX,dword ptr [RSP + 0x1c]
MOV EAX,dword ptr [RBX]
ADD RBX,0x4
LEA EDX,[RAX + -0x1010101]
NOT EAX
AND EDX,EAX
AND EDX,0x80808080
JZ 0x0010724e
MOV EAX,EDX
SHR EAX,0x10
TEST EDX,0x8080
CMOVZ EDX,EAX
LEA RAX,[RBX + 0x2]
CMOVZ RBX,RAX
MOV EAX,EDX
ADD AL,DL
SBB RBX,0x3
SUB RBX,R13
ADD EBX,ECX
JMP 0x00106f9b
JZ 0x00106e7a
JMP 0x00106e70
XOR ESI,ESI
LEA RCX,[0x106300]
MOV EDX,0x8
MOV RDI,R15
CALL 0x001020e0
MOV ESI,dword ptr [0x00119ad0]
TEST ESI,ESI
JNZ 0x00106eaa
LEA RDI,[0x11000e]
CALL 0x001020c0
MOV EDX,0x5
LEA RSI,[0x110a4c]
LEA RDI,[0x110008]
CALL 0x00102170
MOV RDI,RAX
XOR EAX,EAX
CALL 0x001021c0
JMP 0x00107070
MOV EAX,dword ptr [RSP + 0x10]
MOV dword ptr [RSP + 0x8],EAX
JMP 0x00106ee5
(translation_unit "void FUN_00106dd0(void)\n\n{\n  uint uVar1;\n  long lVar2;\n  int iVar3;\n  int iVar4;\n  long lVar5;\n  int iVar6;\n  void *__base;\n  long lVar7;\n  char *pcVar8;\n  char *pcVar9;\n  size_t sVar10;\n  uint *puVar11;\n  uint *puVar12;\n  uint uVar13;\n  int iVar14;\n  ulong uVar15;\n  uint uVar16;\n  long lVar17;\n  int iVar18;\n  uint uVar19;\n  bool bVar20;\n  uint local_70;\n  uint local_68;\n  uint local_60;\n  uint local_58 [10];\n  \n  iVar4 = (DAT_001182e8 + -1) / 3;\n  __base = (void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3);\n  iVar18 = DAT_001182e0;\n  local_68 = DAT_00119b30;\n  if (DAT_00119b30 == 0) {\n    qsort(__base,0,8,FUN_00106300);\n    if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = DAT_00119ad0;\n    lVar2 = DAT_00119ac0;\n    uVar15 = 1;\n    uVar19 = local_68;\n    do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);\n  }\n  else {\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }\n  puts("\f");\n  pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n  printf(pcVar8);\n  local_60 = 0;\n  uVar1 = (local_70 + 2) / 3;\n  if (2 < local_70 + 2) {\n    do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }\nLAB_00107070:\n  free(__base);\n  return;\ncode_r0x00106fee:\n  printf("%6.6s ",local_58);\n  uVar13 = *(uint *)(lVar2 + 0x130);\n  pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n  sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n  printf("%-19.19s",local_58);\n  uVar19 = uVar19 + uVar1;\n  iVar18 = iVar18 + iVar4;\n  goto joined_r0x00106f52;\n}\n\n" (function_definition "void FUN_00106dd0(void)\n\n{\n  uint uVar1;\n  long lVar2;\n  int iVar3;\n  int iVar4;\n  long lVar5;\n  int iVar6;\n  void *__base;\n  long lVar7;\n  char *pcVar8;\n  char *pcVar9;\n  size_t sVar10;\n  uint *puVar11;\n  uint *puVar12;\n  uint uVar13;\n  int iVar14;\n  ulong uVar15;\n  uint uVar16;\n  long lVar17;\n  int iVar18;\n  uint uVar19;\n  bool bVar20;\n  uint local_70;\n  uint local_68;\n  uint local_60;\n  uint local_58 [10];\n  \n  iVar4 = (DAT_001182e8 + -1) / 3;\n  __base = (void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3);\n  iVar18 = DAT_001182e0;\n  local_68 = DAT_00119b30;\n  if (DAT_00119b30 == 0) {\n    qsort(__base,0,8,FUN_00106300);\n    if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = DAT_00119ad0;\n    lVar2 = DAT_00119ac0;\n    uVar15 = 1;\n    uVar19 = local_68;\n    do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);\n  }\n  else {\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }\n  puts("\f");\n  pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n  printf(pcVar8);\n  local_60 = 0;\n  uVar1 = (local_70 + 2) / 3;\n  if (2 < local_70 + 2) {\n    do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }\nLAB_00107070:\n  free(__base);\n  return;\ncode_r0x00106fee:\n  printf("%6.6s ",local_58);\n  uVar13 = *(uint *)(lVar2 + 0x130);\n  pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n  sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n  printf("%-19.19s",local_58);\n  uVar19 = uVar19 + uVar1;\n  iVar18 = iVar18 + iVar4;\n  goto joined_r0x00106f52;\n}" primitive_type (function_declarator "FUN_00106dd0(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  uint uVar1;\n  long lVar2;\n  int iVar3;\n  int iVar4;\n  long lVar5;\n  int iVar6;\n  void *__base;\n  long lVar7;\n  char *pcVar8;\n  char *pcVar9;\n  size_t sVar10;\n  uint *puVar11;\n  uint *puVar12;\n  uint uVar13;\n  int iVar14;\n  ulong uVar15;\n  uint uVar16;\n  long lVar17;\n  int iVar18;\n  uint uVar19;\n  bool bVar20;\n  uint local_70;\n  uint local_68;\n  uint local_60;\n  uint local_58 [10];\n  \n  iVar4 = (DAT_001182e8 + -1) / 3;\n  __base = (void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3);\n  iVar18 = DAT_001182e0;\n  local_68 = DAT_00119b30;\n  if (DAT_00119b30 == 0) {\n    qsort(__base,0,8,FUN_00106300);\n    if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = DAT_00119ad0;\n    lVar2 = DAT_00119ac0;\n    uVar15 = 1;\n    uVar19 = local_68;\n    do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);\n  }\n  else {\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }\n  puts("\f");\n  pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n  printf(pcVar8);\n  local_60 = 0;\n  uVar1 = (local_70 + 2) / 3;\n  if (2 < local_70 + 2) {\n    do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }\nLAB_00107070:\n  free(__base);\n  return;\ncode_r0x00106fee:\n  printf("%6.6s ",local_58);\n  uVar13 = *(uint *)(lVar2 + 0x130);\n  pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n  sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n  printf("%-19.19s",local_58);\n  uVar19 = uVar19 + uVar1;\n  iVar18 = iVar18 + iVar4;\n  goto joined_r0x00106f52;\n}" { (declaration "uint uVar1;" type_identifier identifier ;) (declaration "long lVar2;" (sized_type_specifier "long" long) identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "long lVar5;" (sized_type_specifier "long" long) identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "void *__base;" primitive_type (pointer_declarator "*__base" * identifier) ;) (declaration "long lVar7;" (sized_type_specifier "long" long) identifier ;) (declaration "char *pcVar8;" primitive_type (pointer_declarator "*pcVar8" * identifier) ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "size_t sVar10;" primitive_type identifier ;) (declaration "uint *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "uint *puVar12;" type_identifier (pointer_declarator "*puVar12" * identifier) ;) (declaration "uint uVar13;" type_identifier identifier ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "ulong uVar15;" type_identifier identifier ;) (declaration "uint uVar16;" type_identifier identifier ;) (declaration "long lVar17;" (sized_type_specifier "long" long) identifier ;) (declaration "int iVar18;" primitive_type identifier ;) (declaration "uint uVar19;" type_identifier identifier ;) (declaration "bool bVar20;" primitive_type identifier ;) (declaration "uint local_70;" type_identifier identifier ;) (declaration "uint local_68;" type_identifier identifier ;) (declaration "uint local_60;" type_identifier identifier ;) (declaration "uint local_58 [10];" type_identifier (array_declarator "local_58 [10]" identifier [ number_literal ]) ;) (expression_statement "iVar4 = (DAT_001182e8 + -1) / 3;" (assignment_expression "iVar4 = (DAT_001182e8 + -1) / 3" identifier = (binary_expression "(DAT_001182e8 + -1) / 3" (parenthesized_expression "(DAT_001182e8 + -1)" ( (binary_expression "DAT_001182e8 + -1" identifier + number_literal) )) / number_literal)) ;) (expression_statement "__base = (void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3);" (assignment_expression "__base = (void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3)" identifier = (cast_expression "(void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3)" identifier (argument_list "((ulong)(DAT_00119ad0 + DAT_00119b30) << 3)" ( (binary_expression "(ulong)(DAT_00119ad0 + DAT_00119b30) << 3" (call_expression "(ulong)(DAT_00119ad0 + DAT_00119b30)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(DAT_00119ad0 + DAT_00119b30)" ( (binary_expression "DAT_00119ad0 + DAT_00119b30" identifier + identifier) ))) << number_literal) ))))) ;) (expression_statement "iVar18 = DAT_001182e0;" (assignment_expression "iVar18 = DAT_001182e0" identifier = identifier) ;) (expression_statement "local_68 = DAT_00119b30;" (assignment_expression "local_68 = DAT_00119b30" identifier = identifier) ;) (if_statement "if (DAT_00119b30 == 0) {\n    qsort(__base,0,8,FUN_00106300);\n    if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = DAT_00119ad0;\n    lVar2 = DAT_00119ac0;\n    uVar15 = 1;\n    uVar19 = local_68;\n    do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);\n  }\n  else {\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }" if (parenthesized_expression "(DAT_00119b30 == 0)" ( (binary_expression "DAT_00119b30 == 0" identifier == number_literal) )) (compound_statement "{\n    qsort(__base,0,8,FUN_00106300);\n    if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = DAT_00119ad0;\n    lVar2 = DAT_00119ac0;\n    uVar15 = 1;\n    uVar19 = local_68;\n    do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);\n  }" { (expression_statement "qsort(__base,0,8,FUN_00106300);" (call_expression "qsort(__base,0,8,FUN_00106300)" identifier (argument_list "(__base,0,8,FUN_00106300)" ( identifier , number_literal , number_literal , identifier ))) ;) (if_statement "if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }" if (parenthesized_expression "(DAT_00119ad0 == 0)" ( (binary_expression "DAT_00119ad0 == 0" identifier == number_literal) )) (compound_statement "{\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }" { (expression_statement "puts("\f");" (call_expression "puts("\f")" identifier (argument_list "("\f")" ( (string_literal ""\f"" " escape_sequence ") ))) ;) (expression_statement "pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5)" identifier = (cast_expression "(char *)dcgettext("gprof","Index by function name\n\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext("gprof","Index by function name\n\n",5)" identifier (argument_list "("gprof","Index by function name\n\n",5)" ( (string_literal ""gprof"" " string_content ") , (string_literal ""Index by function name\n\n"" " string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar8);" (call_expression "printf(pcVar8)" identifier (argument_list "(pcVar8)" ( identifier ))) ;) (goto_statement "goto LAB_00107070;" goto statement_identifier ;) })) (labeled_statement "LAB_00106eaa:\n    uVar1 = DAT_00119ad0;" statement_identifier : (expression_statement "uVar1 = DAT_00119ad0;" (assignment_expression "uVar1 = DAT_00119ad0" identifier = identifier) ;)) (expression_statement "lVar2 = DAT_00119ac0;" (assignment_expression "lVar2 = DAT_00119ac0" identifier = identifier) ;) (expression_statement "uVar15 = 1;" (assignment_expression "uVar15 = 1" identifier = number_literal) ;) (expression_statement "uVar19 = local_68;" (assignment_expression "uVar19 = local_68" identifier = identifier) ;) (do_statement "do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);" do (compound_statement "{\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    }" { (expression_statement "local_70 = uVar19 + 1;" (assignment_expression "local_70 = uVar19 + 1" identifier = (binary_expression "uVar19 + 1" identifier + number_literal)) ;) (expression_statement "uVar13 = (int)uVar15 + 1;" (assignment_expression "uVar13 = (int)uVar15 + 1" identifier = (binary_expression "(int)uVar15 + 1" (cast_expression "(int)uVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;" (assignment_expression "*(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2" (pointer_expression "*(ulong *)((long)__base + (ulong)uVar19 * 8)" * (cast_expression "(ulong *)((long)__base + (ulong)uVar19 * 8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)__base + (ulong)uVar19 * 8)" ( (binary_expression "(long)__base + (ulong)uVar19 * 8" (cast_expression "(long)__base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "(ulong)uVar19 * 8" (cast_expression "(ulong)uVar19" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) )))) = (binary_expression "uVar15 * 0x158 + lVar2" (binary_expression "uVar15 * 0x158" identifier * number_literal) + identifier)) ;) (expression_statement "uVar15 = (ulong)uVar13;" (assignment_expression "uVar15 = (ulong)uVar13" identifier = (cast_expression "(ulong)uVar13" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar19 = local_70;" (assignment_expression "uVar19 = local_70" identifier = identifier) ;) }) while (parenthesized_expression "(uVar13 <= uVar1)" ( (binary_expression "uVar13 <= uVar1" identifier <= identifier) )) ;) }) (else_clause "else {\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }" else (compound_statement "{\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }" { (expression_statement "uVar1 = DAT_00119b30 - 1;" (assignment_expression "uVar1 = DAT_00119b30 - 1" identifier = (binary_expression "DAT_00119b30 - 1" identifier - number_literal)) ;) (expression_statement "local_70 = 0;" (assignment_expression "local_70 = 0" identifier = number_literal) ;) (expression_statement "lVar2 = DAT_00119b38 + 0x158;" (assignment_expression "lVar2 = DAT_00119b38 + 0x158" identifier = (binary_expression "DAT_00119b38 + 0x158" identifier + number_literal)) ;) (expression_statement "lVar5 = lVar2;" (assignment_expression "lVar5 = lVar2" identifier = identifier) ;) (expression_statement "lVar17 = DAT_00119b38;" (assignment_expression "lVar17 = DAT_00119b38" identifier = identifier) ;) (while_statement "while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }" { (expression_statement "lVar7 = lVar5;" (assignment_expression "lVar7 = lVar5" identifier = identifier) ;) (if_statement "if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }" if (parenthesized_expression "(((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))" ( (binary_expression "((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0)" (parenthesized_expression "((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0))" ( (binary_expression "(iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)" (parenthesized_expression "(iVar18 == 0)" ( (binary_expression "iVar18 == 0" identifier == number_literal) )) || (parenthesized_expression "(*(long *)(lVar17 + 0x28) != 0)" ( (binary_expression "*(long *)(lVar17 + 0x28) != 0" (pointer_expression "*(long *)(lVar17 + 0x28)" * (cast_expression "(long *)(lVar17 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x28)" ( (binary_expression "lVar17 + 0x28" identifier + number_literal) )))) != number_literal) ))) )) || (parenthesized_expression "(*(double *)(lVar17 + 0xe8) != 0.0)" ( (binary_expression "*(double *)(lVar17 + 0xe8) != 0.0" (pointer_expression "*(double *)(lVar17 + 0xe8)" * (cast_expression "(double *)(lVar17 + 0xe8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0xe8)" ( (binary_expression "lVar17 + 0xe8" identifier + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }" { (expression_statement "uVar15 = (ulong)local_70;" (assignment_expression "uVar15 = (ulong)local_70" identifier = (cast_expression "(ulong)local_70" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "local_70 = local_70 + 1;" (assignment_expression "local_70 = local_70 + 1" identifier = (binary_expression "local_70 + 1" identifier + number_literal)) ;) (expression_statement "*(long *)((long)__base + uVar15 * 8) = lVar17;" (assignment_expression "*(long *)((long)__base + uVar15 * 8) = lVar17" (pointer_expression "*(long *)((long)__base + uVar15 * 8)" * (cast_expression "(long *)((long)__base + uVar15 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)__base + uVar15 * 8)" ( (binary_expression "(long)__base + uVar15 * 8" (cast_expression "(long)__base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "uVar15 * 8" identifier * number_literal)) )))) = identifier) ;) })) (if_statement "if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;" if (parenthesized_expression "((ulong)uVar1 * 0x158 + lVar2 == lVar7)" ( (binary_expression "(ulong)uVar1 * 0x158 + lVar2 == lVar7" (binary_expression "(ulong)uVar1 * 0x158 + lVar2" (binary_expression "(ulong)uVar1 * 0x158" (cast_expression "(ulong)uVar1" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal) + identifier) == identifier) )) (break_statement "break;" break ;)) (expression_statement "lVar5 = lVar7 + 0x158;" (assignment_expression "lVar5 = lVar7 + 0x158" identifier = (binary_expression "lVar7 + 0x158" identifier + number_literal)) ;) (expression_statement "lVar17 = lVar7;" (assignment_expression "lVar17 = lVar7" identifier = identifier) ;) })) (expression_statement "qsort(__base,(ulong)local_70,8,FUN_00106300);" (call_expression "qsort(__base,(ulong)local_70,8,FUN_00106300)" identifier (argument_list "(__base,(ulong)local_70,8,FUN_00106300)" ( identifier , (cast_expression "(ulong)local_70" ( (type_descriptor "ulong" type_identifier) ) identifier) , number_literal , identifier ))) ;) (expression_statement "local_68 = local_70;" (assignment_expression "local_68 = local_70" identifier = identifier) ;) (if_statement "if (DAT_00119ad0 != 0) goto LAB_00106eaa;" if (parenthesized_expression "(DAT_00119ad0 != 0)" ( (binary_expression "DAT_00119ad0 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00106eaa;" goto statement_identifier ;)) }))) (expression_statement "puts("\f");" (call_expression "puts("\f")" identifier (argument_list "("\f")" ( (string_literal ""\f"" " escape_sequence ") ))) ;) (expression_statement "pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5)" identifier = (cast_expression "(char *)dcgettext("gprof","Index by function name\n\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext("gprof","Index by function name\n\n",5)" identifier (argument_list "("gprof","Index by function name\n\n",5)" ( (string_literal ""gprof"" " string_content ") , (string_literal ""Index by function name\n\n"" " string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar8);" (call_expression "printf(pcVar8)" identifier (argument_list "(pcVar8)" ( identifier ))) ;) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" identifier = number_literal) ;) (expression_statement "uVar1 = (local_70 + 2) / 3;" (assignment_expression "uVar1 = (local_70 + 2) / 3" identifier = (binary_expression "(local_70 + 2) / 3" (parenthesized_expression "(local_70 + 2)" ( (binary_expression "local_70 + 2" identifier + number_literal) )) / number_literal)) ;) (if_statement "if (2 < local_70 + 2) {\n    do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }" if (parenthesized_expression "(2 < local_70 + 2)" ( (binary_expression "2 < local_70 + 2" number_literal < (binary_expression "local_70 + 2" identifier + number_literal)) )) (compound_statement "{\n    do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }" { (do_statement "do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );" do (compound_statement "{\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    }" { (expression_statement "iVar18 = 5;" (assignment_expression "iVar18 = 5" identifier = number_literal) ;) (expression_statement "iVar14 = 0;" (assignment_expression "iVar14 = 0" identifier = number_literal) ;) (expression_statement "uVar19 = local_60;" (assignment_expression "uVar19 = local_60" identifier = identifier) ;) (labeled_statement "joined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }" statement_identifier : (if_statement "if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }" if (parenthesized_expression "(uVar19 < local_70)" ( (binary_expression "uVar19 < local_70" identifier < identifier) )) (compound_statement "{\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }" { (do_statement "do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );" do (compound_statement "{\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        }" { (expression_statement "lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);" (assignment_expression "lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8)" identifier = (pointer_expression "*(long *)((long)__base + (ulong)uVar19 * 8)" * (cast_expression "(long *)((long)__base + (ulong)uVar19 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)__base + (ulong)uVar19 * 8)" ( (binary_expression "(long)__base + (ulong)uVar19 * 8" (cast_expression "(long)__base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "(ulong)uVar19 * 8" (cast_expression "(ulong)uVar19" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) ))))) ;) (expression_statement "iVar6 = (int)local_58;" (assignment_expression "iVar6 = (int)local_58" identifier = (cast_expression "(int)local_58" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }" if (parenthesized_expression "(*(int *)(lVar2 + 0x110) == 0)" ( (binary_expression "*(int *)(lVar2 + 0x110) == 0" (pointer_expression "*(int *)(lVar2 + 0x110)" * (cast_expression "(int *)(lVar2 + 0x110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x110)" ( (binary_expression "lVar2 + 0x110" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }" { (expression_statement "sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));" (call_expression "sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108))" identifier (argument_list "((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108))" ( (cast_expression "(char *)local_58" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""(%d)"" " string_content ") , (binary_expression "(ulong)*(uint *)(lVar2 + 0x108)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(lVar2 + 0x108)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x108)" ( (binary_expression "lVar2 + 0x108" identifier + number_literal) )))) ))) ;) (if_statement "if (uVar19 < local_68) goto LAB_00106f7e;" if (parenthesized_expression "(uVar19 < local_68)" ( (binary_expression "uVar19 < local_68" identifier < identifier) )) (goto_statement "goto LAB_00106f7e;" goto statement_identifier ;)) (labeled_statement "LAB_00106fe6:\n            puVar12 = local_58;" statement_identifier : (expression_statement "puVar12 = local_58;" (assignment_expression "puVar12 = local_58" identifier = identifier) ;)) (if_statement "if (DAT_001195dc != 0) goto code_r0x00106fee;" if (parenthesized_expression "(DAT_001195dc != 0)" ( (binary_expression "DAT_001195dc != 0" identifier != number_literal) )) (goto_statement "goto code_r0x00106fee;" goto statement_identifier ;)) (do_statement "do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);" do (compound_statement "{\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            }" { (expression_statement "puVar11 = puVar12;" (assignment_expression "puVar11 = puVar12" identifier = identifier) ;) (expression_statement "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;" (assignment_expression "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11" identifier = (binary_expression "*puVar11 + 0xfefefeff & ~*puVar11" (binary_expression "*puVar11 + 0xfefefeff" (pointer_expression "*puVar11" * identifier) + number_literal) & (unary_expression "~*puVar11" ~ (pointer_expression "*puVar11" * identifier)))) ;) (expression_statement "uVar13 = uVar16 & 0x80808080;" (assignment_expression "uVar13 = uVar16 & 0x80808080" identifier = (binary_expression "uVar16 & 0x80808080" identifier & number_literal)) ;) (expression_statement "puVar12 = puVar11 + 1;" (assignment_expression "puVar12 = puVar11 + 1" identifier = (binary_expression "puVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar13 == 0)" ( (binary_expression "uVar13 == 0" identifier == number_literal) )) ;) (expression_statement "bVar20 = (uVar16 & 0x8080) == 0;" (assignment_expression "bVar20 = (uVar16 & 0x8080) == 0" identifier = (binary_expression "(uVar16 & 0x8080) == 0" (parenthesized_expression "(uVar16 & 0x8080)" ( (binary_expression "uVar16 & 0x8080" identifier & number_literal) )) == number_literal)) ;) (if_statement "if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }" if (parenthesized_expression "(bVar20)" ( identifier )) (compound_statement "{\n              uVar13 = uVar13 >> 0x10;\n            }" { (expression_statement "uVar13 = uVar13 >> 0x10;" (assignment_expression "uVar13 = uVar13 >> 0x10" identifier = (binary_expression "uVar13 >> 0x10" identifier >> number_literal)) ;) })) (if_statement "if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }" if (parenthesized_expression "(bVar20)" ( identifier )) (compound_statement "{\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }" { (expression_statement "puVar12 = (uint *)((long)puVar11 + 6);" (assignment_expression "puVar12 = (uint *)((long)puVar11 + 6)" identifier = (cast_expression "(uint *)((long)puVar11 + 6)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar11 + 6)" ( (binary_expression "(long)puVar11 + 6" (cast_expression "(long)puVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) })) (expression_statement "iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);" (assignment_expression "iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6)" identifier = (binary_expression "iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6)" identifier + (parenthesized_expression "((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6)" ( (binary_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6" (parenthesized_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13))" ( (binary_expression "((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)" (parenthesized_expression "((int)puVar12 + -3)" ( (binary_expression "(int)puVar12 + -3" (cast_expression "(int)puVar12" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )) - (cast_expression "(uint)CARRY1((byte)uVar13,(byte)uVar13)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY1((byte)uVar13,(byte)uVar13)" identifier (argument_list "((byte)uVar13,(byte)uVar13)" ( (cast_expression "(byte)uVar13" ( (type_descriptor "byte" type_identifier) ) identifier) , (cast_expression "(byte)uVar13" ( (type_descriptor "byte" type_identifier) ) identifier) ))))) )) - identifier) )))) ;) (expression_statement "iVar3 = iVar14;" (assignment_expression "iVar3 = iVar14" identifier = identifier) ;) (if_statement "if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }" if (parenthesized_expression "(iVar14 <= iVar18 + -1)" ( (binary_expression "iVar14 <= iVar18 + -1" identifier <= (binary_expression "iVar18 + -1" identifier + number_literal)) )) (compound_statement "{\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }" { (do_statement "do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);" do (compound_statement "{\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              }" { (expression_statement "iVar14 = iVar14 + 1;" (assignment_expression "iVar14 = iVar14 + 1" identifier = (binary_expression "iVar14 + 1" identifier + number_literal)) ;) (expression_statement "putc(0x20,stdout);" (call_expression "putc(0x20,stdout)" identifier (argument_list "(0x20,stdout)" ( number_literal , identifier ))) ;) (expression_statement "iVar3 = iVar18;" (assignment_expression "iVar3 = iVar18" identifier = identifier) ;) }) while (parenthesized_expression "(iVar18 != iVar14)" ( (binary_expression "iVar18 != iVar14" identifier != identifier) )) ;) })) (expression_statement "printf(" %s ",local_58);" (call_expression "printf(" %s ",local_58)" identifier (argument_list "(" %s ",local_58)" ( (string_literal "" %s "" " string_content ") , identifier ))) ;) (expression_statement "uVar13 = *(uint *)(lVar2 + 0x130);" (assignment_expression "uVar13 = *(uint *)(lVar2 + 0x130)" identifier = (pointer_expression "*(uint *)(lVar2 + 0x130)" * (cast_expression "(uint *)(lVar2 + 0x130)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x130)" ( (binary_expression "lVar2 + 0x130" identifier + number_literal) ))))) ;) (expression_statement "pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);" (assignment_expression "pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5)" identifier = (cast_expression "(char *)dcgettext("gprof","<cycle %d>",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext("gprof","<cycle %d>",5)" identifier (argument_list "("gprof","<cycle %d>",5)" ( (string_literal ""gprof"" " string_content ") , (string_literal ""<cycle %d>"" " string_content ") , number_literal ))))) ;) (expression_statement "sprintf((char *)local_58,pcVar8,(ulong)uVar13);" (call_expression "sprintf((char *)local_58,pcVar8,(ulong)uVar13)" identifier (argument_list "((char *)local_58,pcVar8,(ulong)uVar13)" ( (cast_expression "(char *)local_58" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , identifier , (cast_expression "(ulong)uVar13" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (expression_statement "printf("%s",local_58);" (call_expression "printf("%s",local_58)" identifier (argument_list "("%s",local_58)" ( (string_literal ""%s"" " string_content ") , identifier ))) ;) (expression_statement "puVar12 = local_58;" (assignment_expression "puVar12 = local_58" identifier = identifier) ;) (do_statement "do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);" do (compound_statement "{\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            }" { (expression_statement "puVar11 = puVar12;" (assignment_expression "puVar11 = puVar12" identifier = identifier) ;) (expression_statement "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;" (assignment_expression "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11" identifier = (binary_expression "*puVar11 + 0xfefefeff & ~*puVar11" (binary_expression "*puVar11 + 0xfefefeff" (pointer_expression "*puVar11" * identifier) + number_literal) & (unary_expression "~*puVar11" ~ (pointer_expression "*puVar11" * identifier)))) ;) (expression_statement "uVar13 = uVar16 & 0x80808080;" (assignment_expression "uVar13 = uVar16 & 0x80808080" identifier = (binary_expression "uVar16 & 0x80808080" identifier & number_literal)) ;) (expression_statement "puVar12 = puVar11 + 1;" (assignment_expression "puVar12 = puVar11 + 1" identifier = (binary_expression "puVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar13 == 0)" ( (binary_expression "uVar13 == 0" identifier == number_literal) )) ;) (expression_statement "bVar20 = (uVar16 & 0x8080) == 0;" (assignment_expression "bVar20 = (uVar16 & 0x8080) == 0" identifier = (binary_expression "(uVar16 & 0x8080) == 0" (parenthesized_expression "(uVar16 & 0x8080)" ( (binary_expression "uVar16 & 0x8080" identifier & number_literal) )) == number_literal)) ;) (if_statement "if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }" if (parenthesized_expression "(bVar20)" ( identifier )) (compound_statement "{\n              uVar13 = uVar13 >> 0x10;\n            }" { (expression_statement "uVar13 = uVar13 >> 0x10;" (assignment_expression "uVar13 = uVar13 >> 0x10" identifier = (binary_expression "uVar13 >> 0x10" identifier >> number_literal)) ;) })) (if_statement "if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }" if (parenthesized_expression "(bVar20)" ( identifier )) (compound_statement "{\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }" { (expression_statement "puVar12 = (uint *)((long)puVar11 + 6);" (assignment_expression "puVar12 = (uint *)((long)puVar11 + 6)" identifier = (cast_expression "(uint *)((long)puVar11 + 6)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar11 + 6)" ( (binary_expression "(long)puVar11 + 6" (cast_expression "(long)puVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) })) (expression_statement "iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;" (assignment_expression "iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3" identifier = (binary_expression "((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3" (parenthesized_expression "((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6)" ( (binary_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6" (parenthesized_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13))" ( (binary_expression "((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)" (parenthesized_expression "((int)puVar12 + -3)" ( (binary_expression "(int)puVar12 + -3" (cast_expression "(int)puVar12" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )) - (cast_expression "(uint)CARRY1((byte)uVar13,(byte)uVar13)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY1((byte)uVar13,(byte)uVar13)" identifier (argument_list "((byte)uVar13,(byte)uVar13)" ( (cast_expression "(byte)uVar13" ( (type_descriptor "byte" type_identifier) ) identifier) , (cast_expression "(byte)uVar13" ( (type_descriptor "byte" type_identifier) ) identifier) ))))) )) - identifier) )) + identifier)) ;) }) (else_clause "else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }" else (compound_statement "{\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }" { (expression_statement "sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));" (call_expression "sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108))" identifier (argument_list "((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108))" ( (cast_expression "(char *)local_58" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""[%d]"" " string_content ") , (binary_expression "(ulong)*(uint *)(lVar2 + 0x108)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(lVar2 + 0x108)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x108)" ( (binary_expression "lVar2 + 0x108" identifier + number_literal) )))) ))) ;) (if_statement "if (local_68 <= uVar19) goto LAB_00106fe6;" if (parenthesized_expression "(local_68 <= uVar19)" ( (binary_expression "local_68 <= uVar19" identifier <= identifier) )) (goto_statement "goto LAB_00106fe6;" goto statement_identifier ;)) (labeled_statement "LAB_00106f7e:\n            puVar12 = local_58;" statement_identifier : (expression_statement "puVar12 = local_58;" (assignment_expression "puVar12 = local_58" identifier = identifier) ;)) (if_statement "if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }" if (parenthesized_expression "(DAT_001195dc == 0)" ( (binary_expression "DAT_001195dc == 0" identifier == number_literal) )) (compound_statement "{\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }" { (do_statement "do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);" do (compound_statement "{\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              }" { (expression_statement "puVar11 = puVar12;" (assignment_expression "puVar11 = puVar12" identifier = identifier) ;) (expression_statement "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;" (assignment_expression "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11" identifier = (binary_expression "*puVar11 + 0xfefefeff & ~*puVar11" (binary_expression "*puVar11 + 0xfefefeff" (pointer_expression "*puVar11" * identifier) + number_literal) & (unary_expression "~*puVar11" ~ (pointer_expression "*puVar11" * identifier)))) ;) (expression_statement "uVar13 = uVar16 & 0x80808080;" (assignment_expression "uVar13 = uVar16 & 0x80808080" identifier = (binary_expression "uVar16 & 0x80808080" identifier & number_literal)) ;) (expression_statement "puVar12 = puVar11 + 1;" (assignment_expression "puVar12 = puVar11 + 1" identifier = (binary_expression "puVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar13 == 0)" ( (binary_expression "uVar13 == 0" identifier == number_literal) )) ;) (expression_statement "bVar20 = (uVar16 & 0x8080) == 0;" (assignment_expression "bVar20 = (uVar16 & 0x8080) == 0" identifier = (binary_expression "(uVar16 & 0x8080) == 0" (parenthesized_expression "(uVar16 & 0x8080)" ( (binary_expression "uVar16 & 0x8080" identifier & number_literal) )) == number_literal)) ;) (if_statement "if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }" if (parenthesized_expression "(bVar20)" ( identifier )) (compound_statement "{\n                uVar13 = uVar13 >> 0x10;\n              }" { (expression_statement "uVar13 = uVar13 >> 0x10;" (assignment_expression "uVar13 = uVar13 >> 0x10" identifier = (binary_expression "uVar13 >> 0x10" identifier >> number_literal)) ;) })) (if_statement "if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }" if (parenthesized_expression "(bVar20)" ( identifier )) (compound_statement "{\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }" { (expression_statement "puVar12 = (uint *)((long)puVar11 + 6);" (assignment_expression "puVar12 = (uint *)((long)puVar11 + 6)" identifier = (cast_expression "(uint *)((long)puVar11 + 6)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar11 + 6)" ( (binary_expression "(long)puVar11 + 6" (cast_expression "(long)puVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) })) (expression_statement "iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);" (assignment_expression "iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6)" identifier = (binary_expression "iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6)" identifier + (parenthesized_expression "((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6)" ( (binary_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6" (parenthesized_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13))" ( (binary_expression "((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)" (parenthesized_expression "((int)puVar12 + -3)" ( (binary_expression "(int)puVar12 + -3" (cast_expression "(int)puVar12" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )) - (cast_expression "(uint)CARRY1((byte)uVar13,(byte)uVar13)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY1((byte)uVar13,(byte)uVar13)" identifier (argument_list "((byte)uVar13,(byte)uVar13)" ( (cast_expression "(byte)uVar13" ( (type_descriptor "byte" type_identifier) ) identifier) , (cast_expression "(byte)uVar13" ( (type_descriptor "byte" type_identifier) ) identifier) ))))) )) - identifier) )))) ;) (if_statement "if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }" if (parenthesized_expression "(iVar14 <= iVar18 + -1)" ( (binary_expression "iVar14 <= iVar18 + -1" identifier <= (binary_expression "iVar18 + -1" identifier + number_literal)) )) (compound_statement "{\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }" { (do_statement "do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);" do (compound_statement "{\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                }" { (expression_statement "iVar14 = iVar14 + 1;" (assignment_expression "iVar14 = iVar14 + 1" identifier = (binary_expression "iVar14 + 1" identifier + number_literal)) ;) (expression_statement "putc(0x20,stdout);" (call_expression "putc(0x20,stdout)" identifier (argument_list "(0x20,stdout)" ( number_literal , identifier ))) ;) }) while (parenthesized_expression "(iVar14 != iVar18)" ( (binary_expression "iVar14 != iVar18" identifier != identifier) )) ;) })) (expression_statement "printf(" %s ",local_58);" (call_expression "printf(" %s ",local_58)" identifier (argument_list "(" %s ",local_58)" ( (string_literal "" %s "" " string_content ") , identifier ))) ;) (expression_statement "iVar6 = FUN_0010ce70(lVar2);" (assignment_expression "iVar6 = FUN_0010ce70(lVar2)" identifier = (call_expression "FUN_0010ce70(lVar2)" identifier (argument_list "(lVar2)" ( identifier )))) ;) (expression_statement "iVar14 = iVar14 + iVar6;" (assignment_expression "iVar14 = iVar14 + iVar6" identifier = (binary_expression "iVar14 + iVar6" identifier + identifier)) ;) (if_statement "if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }" if (parenthesized_expression "(((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0))" ( (binary_expression "((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)" (parenthesized_expression "((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0))" ( (binary_expression "(DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)" (parenthesized_expression "(DAT_001195d0 == 0)" ( (binary_expression "DAT_001195d0 == 0" identifier == number_literal) )) && (parenthesized_expression "((*(byte *)(lVar2 + 0x24) & 2) != 0)" ( (binary_expression "(*(byte *)(lVar2 + 0x24) & 2) != 0" (parenthesized_expression "(*(byte *)(lVar2 + 0x24) & 2)" ( (binary_expression "*(byte *)(lVar2 + 0x24) & 2" (pointer_expression "*(byte *)(lVar2 + 0x24)" * (cast_expression "(byte *)(lVar2 + 0x24)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x24)" ( (binary_expression "lVar2 + 0x24" identifier + number_literal) )))) & number_literal) )) != number_literal) ))) )) && (parenthesized_expression "(*(long *)(lVar2 + 0x18) != 0)" ( (binary_expression "*(long *)(lVar2 + 0x18) != 0" (pointer_expression "*(long *)(lVar2 + 0x18)" * (cast_expression "(long *)(lVar2 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x18)" ( (binary_expression "lVar2 + 0x18" identifier + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }" { (expression_statement "pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);" (assignment_expression "pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8)" identifier = (pointer_expression "*(char **)(*(long *)(lVar2 + 0x18) + 8)" * (cast_expression "(char **)(*(long *)(lVar2 + 0x18) + 8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(long *)(lVar2 + 0x18) + 8)" ( (binary_expression "*(long *)(lVar2 + 0x18) + 8" (pointer_expression "*(long *)(lVar2 + 0x18)" * (cast_expression "(long *)(lVar2 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x18)" ( (binary_expression "lVar2 + 0x18" identifier + number_literal) )))) + number_literal) ))))) ;) (if_statement "if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }" if (parenthesized_expression "(DAT_001195cc == 0)" ( (binary_expression "DAT_001195cc == 0" identifier == number_literal) )) (compound_statement "{\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }" { (expression_statement "pcVar9 = strrchr(pcVar8,0x2f);" (assignment_expression "pcVar9 = strrchr(pcVar8,0x2f)" identifier = (call_expression "strrchr(pcVar8,0x2f)" identifier (argument_list "(pcVar8,0x2f)" ( identifier , number_literal )))) ;) (if_statement "if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }" if (parenthesized_expression "(pcVar9 != (char *)0x0)" ( (binary_expression "pcVar9 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    pcVar8 = pcVar9 + 1;\n                  }" { (expression_statement "pcVar8 = pcVar9 + 1;" (assignment_expression "pcVar8 = pcVar9 + 1" identifier = (binary_expression "pcVar9 + 1" identifier + number_literal)) ;) })) })) (expression_statement "printf(" (%s)",pcVar8);" (call_expression "printf(" (%s)",pcVar8)" identifier (argument_list "(" (%s)",pcVar8)" ( (string_literal "" (%s)"" " string_content ") , identifier ))) ;) (expression_statement "sVar10 = strlen(pcVar8);" (assignment_expression "sVar10 = strlen(pcVar8)" identifier = (call_expression "strlen(pcVar8)" identifier (argument_list "(pcVar8)" ( identifier )))) ;) (expression_statement "iVar14 = iVar14 + 3 + (int)sVar10;" (assignment_expression "iVar14 = iVar14 + 3 + (int)sVar10" identifier = (binary_expression "iVar14 + 3 + (int)sVar10" (binary_expression "iVar14 + 3" identifier + number_literal) + (cast_expression "(int)sVar10" ( (type_descriptor "int" primitive_type) ) identifier))) ;) })) }) (else_clause "else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }" else (compound_statement "{\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }" { (expression_statement "printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));" (call_expression "printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10))" identifier (argument_list "("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10))" ( (string_literal ""%6.6s %-19.19s"" " string_content ") , identifier , (pointer_expression "*(undefined8 *)(lVar2 + 0x10)" * (cast_expression "(undefined8 *)(lVar2 + 0x10)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x10)" ( (binary_expression "lVar2 + 0x10" identifier + number_literal) )))) ))) ;) }))) }))) (expression_statement "uVar19 = uVar19 + uVar1;" (assignment_expression "uVar19 = uVar19 + uVar1" identifier = (binary_expression "uVar19 + uVar1" identifier + identifier)) ;) (expression_statement "iVar18 = iVar18 + iVar4;" (assignment_expression "iVar18 = iVar18 + iVar4" identifier = (binary_expression "iVar18 + iVar4" identifier + identifier)) ;) (if_statement "if (local_70 <= uVar19) break;" if (parenthesized_expression "(local_70 <= uVar19)" ( (binary_expression "local_70 <= uVar19" identifier <= identifier) )) (break_statement "break;" break ;)) }) while (parenthesized_expression "( true )" ( true )) ;) }))) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) (expression_statement "local_60 = local_60 + 1;" (assignment_expression "local_60 = local_60 + 1" identifier = (binary_expression "local_60 + 1" identifier + number_literal)) ;) (if_statement "if (uVar1 <= local_60) break;" if (parenthesized_expression "(uVar1 <= local_60)" ( (binary_expression "uVar1 <= local_60" identifier <= identifier) )) (break_statement "break;" break ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) (labeled_statement "LAB_00107070:\n  free(__base);" statement_identifier : (expression_statement "free(__base);" (call_expression "free(__base)" identifier (argument_list "(__base)" ( identifier ))) ;)) (return_statement "return;" return ;) (labeled_statement "code_r0x00106fee:\n  printf("%6.6s ",local_58);" statement_identifier : (expression_statement "printf("%6.6s ",local_58);" (call_expression "printf("%6.6s ",local_58)" identifier (argument_list "("%6.6s ",local_58)" ( (string_literal ""%6.6s "" " string_content ") , identifier ))) ;)) (expression_statement "uVar13 = *(uint *)(lVar2 + 0x130);" (assignment_expression "uVar13 = *(uint *)(lVar2 + 0x130)" identifier = (pointer_expression "*(uint *)(lVar2 + 0x130)" * (cast_expression "(uint *)(lVar2 + 0x130)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x130)" ( (binary_expression "lVar2 + 0x130" identifier + number_literal) ))))) ;) (expression_statement "pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);" (assignment_expression "pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5)" identifier = (cast_expression "(char *)dcgettext("gprof","<cycle %d>",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext("gprof","<cycle %d>",5)" identifier (argument_list "("gprof","<cycle %d>",5)" ( (string_literal ""gprof"" " string_content ") , (string_literal ""<cycle %d>"" " string_content ") , number_literal ))))) ;) (expression_statement "sprintf((char *)local_58,pcVar8,(ulong)uVar13);" (call_expression "sprintf((char *)local_58,pcVar8,(ulong)uVar13)" identifier (argument_list "((char *)local_58,pcVar8,(ulong)uVar13)" ( (cast_expression "(char *)local_58" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , identifier , (cast_expression "(ulong)uVar13" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (expression_statement "printf("%-19.19s",local_58);" (call_expression "printf("%-19.19s",local_58)" identifier (argument_list "("%-19.19s",local_58)" ( (string_literal ""%-19.19s"" " string_content ") , identifier ))) ;) (expression_statement "uVar19 = uVar19 + uVar1;" (assignment_expression "uVar19 = uVar19 + uVar1" identifier = (binary_expression "uVar19 + uVar1" identifier + identifier)) ;) (expression_statement "iVar18 = iVar18 + iVar4;" (assignment_expression "iVar18 = iVar18 + iVar4" identifier = (binary_expression "iVar18 + iVar4" identifier + identifier)) ;) (goto_statement "goto joined_r0x00106f52;" goto statement_identifier ;) })))
(translation_unit "/* WARNING: Unknown calling convention -- yet parameter storage is locked */\n\nvoid cg_print_index(void)\n\n{\n  uint uVar1;\n  Sym *pSVar2;\n  int iVar3;\n  int iVar4;\n  bfd_boolean bVar5;\n  Sym *pSVar6;\n  int iVar7;\n  void *__base;\n  Sym *pSVar8;\n  char *pcVar9;\n  char *pcVar10;\n  size_t sVar11;\n  uint *puVar12;\n  uint *puVar13;\n  uint uVar14;\n  int iVar15;\n  ulong uVar16;\n  uint uVar17;\n  Sym *pSVar18;\n  int iVar19;\n  uint uVar20;\n  bool bVar21;\n  uint local_70;\n  uint local_68;\n  uint local_60;\n  char buf [20];\n  \n  iVar4 = (output_width + -1) / 3;\n  __base = (void *)xmalloc((ulong)(num_cycles + symtab.len) << 3);\n  bVar5 = ignore_zeros;\n  local_68 = symtab.len;\n  if (symtab.len == 0) {\n    qsort(__base,0,8,cmp_name);\n    if (num_cycles == 0) {\n      puts("\f");\n      pcVar9 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar9);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = num_cycles;\n    pSVar2 = cycle_header;\n    uVar16 = 1;\n    uVar20 = local_68;\n    do {\n      local_70 = uVar20 + 1;\n      uVar14 = (int)uVar16 + 1;\n      *(Sym **)((long)__base + (ulong)uVar20 * 8) = pSVar2 + uVar16;\n      uVar16 = (ulong)uVar14;\n      uVar20 = local_70;\n    } while (uVar14 <= uVar1);\n  }\n  else {\n    uVar1 = symtab.len - 1;\n    local_70 = 0;\n    pSVar2 = symtab.base + 1;\n    pSVar6 = pSVar2;\n    pSVar18 = symtab.base;\n    while( true ) {\n      pSVar8 = pSVar6;\n      if (((bVar5 == 0) || (pSVar18->ncalls != 0)) || ((pSVar18->hist).time != 0.0)) {\n        uVar16 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(Sym **)((long)__base + uVar16 * 8) = pSVar18;\n      }\n      if (pSVar2 + uVar1 == pSVar8) break;\n      pSVar6 = pSVar8 + 1;\n      pSVar18 = pSVar8;\n    }\n    qsort(__base,(ulong)local_70,8,cmp_name);\n    local_68 = local_70;\n    if (num_cycles != 0) goto LAB_00106eaa;\n  }\n  puts("\f");\n  pcVar9 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n  printf(pcVar9);\n  local_60 = 0;\n  uVar1 = (local_70 + 2) / 3;\n  if (2 < local_70 + 2) {\n    do {\n      iVar19 = 5;\n      iVar15 = 0;\n      uVar20 = local_60;\njoined_r0x00106f52:\n      if (uVar20 < local_70) {\n        do {\n          pSVar2 = *(Sym **)((long)__base + (ulong)uVar20 * 8);\n          uVar16 = (ulong)(uint)(pSVar2->cg).index;\n          iVar7 = (int)buf;\n          if ((pSVar2->cg).print_flag == 0) {\n            sprintf(buf,"(%d)",uVar16);\n            if (uVar20 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output != 0) goto code_r0x00106fee;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7);\n            iVar3 = iVar15;\n            if (iVar15 <= iVar19 + -1) {\n              do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);\n            }\n            printf(" %s ",buf);\n            uVar14 = (pSVar2->cg).cyc.num;\n            pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf(buf,pcVar9,(ulong)uVar14);\n            printf("%s",buf);\n            puVar13 = (uint *)buf;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3;\n          }\n          else {\n            sprintf(buf,"[%d]",uVar16);\n            if (local_68 <= uVar20) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output == 0) {\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }\n          }\n          uVar20 = uVar20 + uVar1;\n          iVar19 = iVar19 + iVar4;\n          if (local_70 <= uVar20) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }\nLAB_00107070:\n  free(__base);\n  return;\ncode_r0x00106fee:\n  printf("%6.6s ",buf);\n  uVar14 = (pSVar2->cg).cyc.num;\n  pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n  sprintf(buf,pcVar9,(ulong)uVar14);\n  printf("%-19.19s",buf);\n  uVar20 = uVar20 + uVar1;\n  iVar19 = iVar19 + iVar4;\n  goto joined_r0x00106f52;\n}\n\n" comment (function_definition "void cg_print_index(void)\n\n{\n  uint uVar1;\n  Sym *pSVar2;\n  int iVar3;\n  int iVar4;\n  bfd_boolean bVar5;\n  Sym *pSVar6;\n  int iVar7;\n  void *__base;\n  Sym *pSVar8;\n  char *pcVar9;\n  char *pcVar10;\n  size_t sVar11;\n  uint *puVar12;\n  uint *puVar13;\n  uint uVar14;\n  int iVar15;\n  ulong uVar16;\n  uint uVar17;\n  Sym *pSVar18;\n  int iVar19;\n  uint uVar20;\n  bool bVar21;\n  uint local_70;\n  uint local_68;\n  uint local_60;\n  char buf [20];\n  \n  iVar4 = (output_width + -1) / 3;\n  __base = (void *)xmalloc((ulong)(num_cycles + symtab.len) << 3);\n  bVar5 = ignore_zeros;\n  local_68 = symtab.len;\n  if (symtab.len == 0) {\n    qsort(__base,0,8,cmp_name);\n    if (num_cycles == 0) {\n      puts("\f");\n      pcVar9 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar9);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = num_cycles;\n    pSVar2 = cycle_header;\n    uVar16 = 1;\n    uVar20 = local_68;\n    do {\n      local_70 = uVar20 + 1;\n      uVar14 = (int)uVar16 + 1;\n      *(Sym **)((long)__base + (ulong)uVar20 * 8) = pSVar2 + uVar16;\n      uVar16 = (ulong)uVar14;\n      uVar20 = local_70;\n    } while (uVar14 <= uVar1);\n  }\n  else {\n    uVar1 = symtab.len - 1;\n    local_70 = 0;\n    pSVar2 = symtab.base + 1;\n    pSVar6 = pSVar2;\n    pSVar18 = symtab.base;\n    while( true ) {\n      pSVar8 = pSVar6;\n      if (((bVar5 == 0) || (pSVar18->ncalls != 0)) || ((pSVar18->hist).time != 0.0)) {\n        uVar16 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(Sym **)((long)__base + uVar16 * 8) = pSVar18;\n      }\n      if (pSVar2 + uVar1 == pSVar8) break;\n      pSVar6 = pSVar8 + 1;\n      pSVar18 = pSVar8;\n    }\n    qsort(__base,(ulong)local_70,8,cmp_name);\n    local_68 = local_70;\n    if (num_cycles != 0) goto LAB_00106eaa;\n  }\n  puts("\f");\n  pcVar9 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n  printf(pcVar9);\n  local_60 = 0;\n  uVar1 = (local_70 + 2) / 3;\n  if (2 < local_70 + 2) {\n    do {\n      iVar19 = 5;\n      iVar15 = 0;\n      uVar20 = local_60;\njoined_r0x00106f52:\n      if (uVar20 < local_70) {\n        do {\n          pSVar2 = *(Sym **)((long)__base + (ulong)uVar20 * 8);\n          uVar16 = (ulong)(uint)(pSVar2->cg).index;\n          iVar7 = (int)buf;\n          if ((pSVar2->cg).print_flag == 0) {\n            sprintf(buf,"(%d)",uVar16);\n            if (uVar20 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output != 0) goto code_r0x00106fee;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7);\n            iVar3 = iVar15;\n            if (iVar15 <= iVar19 + -1) {\n              do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);\n            }\n            printf(" %s ",buf);\n            uVar14 = (pSVar2->cg).cyc.num;\n            pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf(buf,pcVar9,(ulong)uVar14);\n            printf("%s",buf);\n            puVar13 = (uint *)buf;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3;\n          }\n          else {\n            sprintf(buf,"[%d]",uVar16);\n            if (local_68 <= uVar20) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output == 0) {\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }\n          }\n          uVar20 = uVar20 + uVar1;\n          iVar19 = iVar19 + iVar4;\n          if (local_70 <= uVar20) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }\nLAB_00107070:\n  free(__base);\n  return;\ncode_r0x00106fee:\n  printf("%6.6s ",buf);\n  uVar14 = (pSVar2->cg).cyc.num;\n  pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n  sprintf(buf,pcVar9,(ulong)uVar14);\n  printf("%-19.19s",buf);\n  uVar20 = uVar20 + uVar1;\n  iVar19 = iVar19 + iVar4;\n  goto joined_r0x00106f52;\n}" primitive_type (function_declarator "cg_print_index(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  uint uVar1;\n  Sym *pSVar2;\n  int iVar3;\n  int iVar4;\n  bfd_boolean bVar5;\n  Sym *pSVar6;\n  int iVar7;\n  void *__base;\n  Sym *pSVar8;\n  char *pcVar9;\n  char *pcVar10;\n  size_t sVar11;\n  uint *puVar12;\n  uint *puVar13;\n  uint uVar14;\n  int iVar15;\n  ulong uVar16;\n  uint uVar17;\n  Sym *pSVar18;\n  int iVar19;\n  uint uVar20;\n  bool bVar21;\n  uint local_70;\n  uint local_68;\n  uint local_60;\n  char buf [20];\n  \n  iVar4 = (output_width + -1) / 3;\n  __base = (void *)xmalloc((ulong)(num_cycles + symtab.len) << 3);\n  bVar5 = ignore_zeros;\n  local_68 = symtab.len;\n  if (symtab.len == 0) {\n    qsort(__base,0,8,cmp_name);\n    if (num_cycles == 0) {\n      puts("\f");\n      pcVar9 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar9);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = num_cycles;\n    pSVar2 = cycle_header;\n    uVar16 = 1;\n    uVar20 = local_68;\n    do {\n      local_70 = uVar20 + 1;\n      uVar14 = (int)uVar16 + 1;\n      *(Sym **)((long)__base + (ulong)uVar20 * 8) = pSVar2 + uVar16;\n      uVar16 = (ulong)uVar14;\n      uVar20 = local_70;\n    } while (uVar14 <= uVar1);\n  }\n  else {\n    uVar1 = symtab.len - 1;\n    local_70 = 0;\n    pSVar2 = symtab.base + 1;\n    pSVar6 = pSVar2;\n    pSVar18 = symtab.base;\n    while( true ) {\n      pSVar8 = pSVar6;\n      if (((bVar5 == 0) || (pSVar18->ncalls != 0)) || ((pSVar18->hist).time != 0.0)) {\n        uVar16 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(Sym **)((long)__base + uVar16 * 8) = pSVar18;\n      }\n      if (pSVar2 + uVar1 == pSVar8) break;\n      pSVar6 = pSVar8 + 1;\n      pSVar18 = pSVar8;\n    }\n    qsort(__base,(ulong)local_70,8,cmp_name);\n    local_68 = local_70;\n    if (num_cycles != 0) goto LAB_00106eaa;\n  }\n  puts("\f");\n  pcVar9 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n  printf(pcVar9);\n  local_60 = 0;\n  uVar1 = (local_70 + 2) / 3;\n  if (2 < local_70 + 2) {\n    do {\n      iVar19 = 5;\n      iVar15 = 0;\n      uVar20 = local_60;\njoined_r0x00106f52:\n      if (uVar20 < local_70) {\n        do {\n          pSVar2 = *(Sym **)((long)__base + (ulong)uVar20 * 8);\n          uVar16 = (ulong)(uint)(pSVar2->cg).index;\n          iVar7 = (int)buf;\n          if ((pSVar2->cg).print_flag == 0) {\n            sprintf(buf,"(%d)",uVar16);\n            if (uVar20 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output != 0) goto code_r0x00106fee;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7);\n            iVar3 = iVar15;\n            if (iVar15 <= iVar19 + -1) {\n              do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);\n            }\n            printf(" %s ",buf);\n            uVar14 = (pSVar2->cg).cyc.num;\n            pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf(buf,pcVar9,(ulong)uVar14);\n            printf("%s",buf);\n            puVar13 = (uint *)buf;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3;\n          }\n          else {\n            sprintf(buf,"[%d]",uVar16);\n            if (local_68 <= uVar20) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output == 0) {\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }\n          }\n          uVar20 = uVar20 + uVar1;\n          iVar19 = iVar19 + iVar4;\n          if (local_70 <= uVar20) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }\nLAB_00107070:\n  free(__base);\n  return;\ncode_r0x00106fee:\n  printf("%6.6s ",buf);\n  uVar14 = (pSVar2->cg).cyc.num;\n  pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n  sprintf(buf,pcVar9,(ulong)uVar14);\n  printf("%-19.19s",buf);\n  uVar20 = uVar20 + uVar1;\n  iVar19 = iVar19 + iVar4;\n  goto joined_r0x00106f52;\n}" { (declaration "uint uVar1;" type_identifier identifier ;) (declaration "Sym *pSVar2;" type_identifier (pointer_declarator "*pSVar2" * identifier) ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "bfd_boolean bVar5;" type_identifier identifier ;) (declaration "Sym *pSVar6;" type_identifier (pointer_declarator "*pSVar6" * identifier) ;) (declaration "int iVar7;" primitive_type identifier ;) (declaration "void *__base;" primitive_type (pointer_declarator "*__base" * identifier) ;) (declaration "Sym *pSVar8;" type_identifier (pointer_declarator "*pSVar8" * identifier) ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "char *pcVar10;" primitive_type (pointer_declarator "*pcVar10" * identifier) ;) (declaration "size_t sVar11;" primitive_type identifier ;) (declaration "uint *puVar12;" type_identifier (pointer_declarator "*puVar12" * identifier) ;) (declaration "uint *puVar13;" type_identifier (pointer_declarator "*puVar13" * identifier) ;) (declaration "uint uVar14;" type_identifier identifier ;) (declaration "int iVar15;" primitive_type identifier ;) (declaration "ulong uVar16;" type_identifier identifier ;) (declaration "uint uVar17;" type_identifier identifier ;) (declaration "Sym *pSVar18;" type_identifier (pointer_declarator "*pSVar18" * identifier) ;) (declaration "int iVar19;" primitive_type identifier ;) (declaration "uint uVar20;" type_identifier identifier ;) (declaration "bool bVar21;" primitive_type identifier ;) (declaration "uint local_70;" type_identifier identifier ;) (declaration "uint local_68;" type_identifier identifier ;) (declaration "uint local_60;" type_identifier identifier ;) (declaration "char buf [20];" primitive_type (array_declarator "buf [20]" identifier [ number_literal ]) ;) (expression_statement "iVar4 = (output_width + -1) / 3;" (assignment_expression "iVar4 = (output_width + -1) / 3" identifier = (binary_expression "(output_width + -1) / 3" (parenthesized_expression "(output_width + -1)" ( (binary_expression "output_width + -1" identifier + number_literal) )) / number_literal)) ;) (expression_statement "__base = (void *)xmalloc((ulong)(num_cycles + symtab.len) << 3);" (assignment_expression "__base = (void *)xmalloc((ulong)(num_cycles + symtab.len) << 3)" identifier = (cast_expression "(void *)xmalloc((ulong)(num_cycles + symtab.len) << 3)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc((ulong)(num_cycles + symtab.len) << 3)" identifier (argument_list "((ulong)(num_cycles + symtab.len) << 3)" ( (binary_expression "(ulong)(num_cycles + symtab.len) << 3" (call_expression "(ulong)(num_cycles + symtab.len)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(num_cycles + symtab.len)" ( (binary_expression "num_cycles + symtab.len" identifier + (field_expression "symtab.len" identifier . field_identifier)) ))) << number_literal) ))))) ;) (expression_statement "bVar5 = ignore_zeros;" (assignment_expression "bVar5 = ignore_zeros" identifier = identifier) ;) (expression_statement "local_68 = symtab.len;" (assignment_expression "local_68 = symtab.len" identifier = (field_expression "symtab.len" identifier . field_identifier)) ;) (if_statement "if (symtab.len == 0) {\n    qsort(__base,0,8,cmp_name);\n    if (num_cycles == 0) {\n      puts("\f");\n      pcVar9 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar9);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = num_cycles;\n    pSVar2 = cycle_header;\n    uVar16 = 1;\n    uVar20 = local_68;\n    do {\n      local_70 = uVar20 + 1;\n      uVar14 = (int)uVar16 + 1;\n      *(Sym **)((long)__base + (ulong)uVar20 * 8) = pSVar2 + uVar16;\n      uVar16 = (ulong)uVar14;\n      uVar20 = local_70;\n    } while (uVar14 <= uVar1);\n  }\n  else {\n    uVar1 = symtab.len - 1;\n    local_70 = 0;\n    pSVar2 = symtab.base + 1;\n    pSVar6 = pSVar2;\n    pSVar18 = symtab.base;\n    while( true ) {\n      pSVar8 = pSVar6;\n      if (((bVar5 == 0) || (pSVar18->ncalls != 0)) || ((pSVar18->hist).time != 0.0)) {\n        uVar16 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(Sym **)((long)__base + uVar16 * 8) = pSVar18;\n      }\n      if (pSVar2 + uVar1 == pSVar8) break;\n      pSVar6 = pSVar8 + 1;\n      pSVar18 = pSVar8;\n    }\n    qsort(__base,(ulong)local_70,8,cmp_name);\n    local_68 = local_70;\n    if (num_cycles != 0) goto LAB_00106eaa;\n  }" if (parenthesized_expression "(symtab.len == 0)" ( (binary_expression "symtab.len == 0" (field_expression "symtab.len" identifier . field_identifier) == number_literal) )) (compound_statement "{\n    qsort(__base,0,8,cmp_name);\n    if (num_cycles == 0) {\n      puts("\f");\n      pcVar9 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar9);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = num_cycles;\n    pSVar2 = cycle_header;\n    uVar16 = 1;\n    uVar20 = local_68;\n    do {\n      local_70 = uVar20 + 1;\n      uVar14 = (int)uVar16 + 1;\n      *(Sym **)((long)__base + (ulong)uVar20 * 8) = pSVar2 + uVar16;\n      uVar16 = (ulong)uVar14;\n      uVar20 = local_70;\n    } while (uVar14 <= uVar1);\n  }" { (expression_statement "qsort(__base,0,8,cmp_name);" (call_expression "qsort(__base,0,8,cmp_name)" identifier (argument_list "(__base,0,8,cmp_name)" ( identifier , number_literal , number_literal , identifier ))) ;) (if_statement "if (num_cycles == 0) {\n      puts("\f");\n      pcVar9 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar9);\n      goto LAB_00107070;\n    }" if (parenthesized_expression "(num_cycles == 0)" ( (binary_expression "num_cycles == 0" identifier == number_literal) )) (compound_statement "{\n      puts("\f");\n      pcVar9 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar9);\n      goto LAB_00107070;\n    }" { (expression_statement "puts("\f");" (call_expression "puts("\f")" identifier (argument_list "("\f")" ( (string_literal ""\f"" " escape_sequence ") ))) ;) (expression_statement "pcVar9 = (char *)dcgettext("gprof","Index by function name\n\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext("gprof","Index by function name\n\n",5)" identifier = (cast_expression "(char *)dcgettext("gprof","Index by function name\n\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext("gprof","Index by function name\n\n",5)" identifier (argument_list "("gprof","Index by function name\n\n",5)" ( (string_literal ""gprof"" " string_content ") , (string_literal ""Index by function name\n\n"" " string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9);" (call_expression "printf(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (goto_statement "goto LAB_00107070;" goto statement_identifier ;) })) (labeled_statement "LAB_00106eaa:\n    uVar1 = num_cycles;" statement_identifier : (expression_statement "uVar1 = num_cycles;" (assignment_expression "uVar1 = num_cycles" identifier = identifier) ;)) (expression_statement "pSVar2 = cycle_header;" (assignment_expression "pSVar2 = cycle_header" identifier = identifier) ;) (expression_statement "uVar16 = 1;" (assignment_expression "uVar16 = 1" identifier = number_literal) ;) (expression_statement "uVar20 = local_68;" (assignment_expression "uVar20 = local_68" identifier = identifier) ;) (do_statement "do {\n      local_70 = uVar20 + 1;\n      uVar14 = (int)uVar16 + 1;\n      *(Sym **)((long)__base + (ulong)uVar20 * 8) = pSVar2 + uVar16;\n      uVar16 = (ulong)uVar14;\n      uVar20 = local_70;\n    } while (uVar14 <= uVar1);" do (compound_statement "{\n      local_70 = uVar20 + 1;\n      uVar14 = (int)uVar16 + 1;\n      *(Sym **)((long)__base + (ulong)uVar20 * 8) = pSVar2 + uVar16;\n      uVar16 = (ulong)uVar14;\n      uVar20 = local_70;\n    }" { (expression_statement "local_70 = uVar20 + 1;" (assignment_expression "local_70 = uVar20 + 1" identifier = (binary_expression "uVar20 + 1" identifier + number_literal)) ;) (expression_statement "uVar14 = (int)uVar16 + 1;" (assignment_expression "uVar14 = (int)uVar16 + 1" identifier = (binary_expression "(int)uVar16 + 1" (cast_expression "(int)uVar16" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(Sym **)((long)__base + (ulong)uVar20 * 8) = pSVar2 + uVar16;" (assignment_expression "*(Sym **)((long)__base + (ulong)uVar20 * 8) = pSVar2 + uVar16" (pointer_expression "*(Sym **)((long)__base + (ulong)uVar20 * 8)" * (cast_expression "(Sym **)((long)__base + (ulong)uVar20 * 8)" ( (type_descriptor "Sym **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((long)__base + (ulong)uVar20 * 8)" ( (binary_expression "(long)__base + (ulong)uVar20 * 8" (cast_expression "(long)__base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "(ulong)uVar20 * 8" (cast_expression "(ulong)uVar20" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) )))) = (binary_expression "pSVar2 + uVar16" identifier + identifier)) ;) (expression_statement "uVar16 = (ulong)uVar14;" (assignment_expression "uVar16 = (ulong)uVar14" identifier = (cast_expression "(ulong)uVar14" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar20 = local_70;" (assignment_expression "uVar20 = local_70" identifier = identifier) ;) }) while (parenthesized_expression "(uVar14 <= uVar1)" ( (binary_expression "uVar14 <= uVar1" identifier <= identifier) )) ;) }) (else_clause "else {\n    uVar1 = symtab.len - 1;\n    local_70 = 0;\n    pSVar2 = symtab.base + 1;\n    pSVar6 = pSVar2;\n    pSVar18 = symtab.base;\n    while( true ) {\n      pSVar8 = pSVar6;\n      if (((bVar5 == 0) || (pSVar18->ncalls != 0)) || ((pSVar18->hist).time != 0.0)) {\n        uVar16 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(Sym **)((long)__base + uVar16 * 8) = pSVar18;\n      }\n      if (pSVar2 + uVar1 == pSVar8) break;\n      pSVar6 = pSVar8 + 1;\n      pSVar18 = pSVar8;\n    }\n    qsort(__base,(ulong)local_70,8,cmp_name);\n    local_68 = local_70;\n    if (num_cycles != 0) goto LAB_00106eaa;\n  }" else (compound_statement "{\n    uVar1 = symtab.len - 1;\n    local_70 = 0;\n    pSVar2 = symtab.base + 1;\n    pSVar6 = pSVar2;\n    pSVar18 = symtab.base;\n    while( true ) {\n      pSVar8 = pSVar6;\n      if (((bVar5 == 0) || (pSVar18->ncalls != 0)) || ((pSVar18->hist).time != 0.0)) {\n        uVar16 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(Sym **)((long)__base + uVar16 * 8) = pSVar18;\n      }\n      if (pSVar2 + uVar1 == pSVar8) break;\n      pSVar6 = pSVar8 + 1;\n      pSVar18 = pSVar8;\n    }\n    qsort(__base,(ulong)local_70,8,cmp_name);\n    local_68 = local_70;\n    if (num_cycles != 0) goto LAB_00106eaa;\n  }" { (expression_statement "uVar1 = symtab.len - 1;" (assignment_expression "uVar1 = symtab.len - 1" identifier = (binary_expression "symtab.len - 1" (field_expression "symtab.len" identifier . field_identifier) - number_literal)) ;) (expression_statement "local_70 = 0;" (assignment_expression "local_70 = 0" identifier = number_literal) ;) (expression_statement "pSVar2 = symtab.base + 1;" (assignment_expression "pSVar2 = symtab.base + 1" identifier = (binary_expression "symtab.base + 1" (field_expression "symtab.base" identifier . field_identifier) + number_literal)) ;) (expression_statement "pSVar6 = pSVar2;" (assignment_expression "pSVar6 = pSVar2" identifier = identifier) ;) (expression_statement "pSVar18 = symtab.base;" (assignment_expression "pSVar18 = symtab.base" identifier = (field_expression "symtab.base" identifier . field_identifier)) ;) (while_statement "while( true ) {\n      pSVar8 = pSVar6;\n      if (((bVar5 == 0) || (pSVar18->ncalls != 0)) || ((pSVar18->hist).time != 0.0)) {\n        uVar16 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(Sym **)((long)__base + uVar16 * 8) = pSVar18;\n      }\n      if (pSVar2 + uVar1 == pSVar8) break;\n      pSVar6 = pSVar8 + 1;\n      pSVar18 = pSVar8;\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      pSVar8 = pSVar6;\n      if (((bVar5 == 0) || (pSVar18->ncalls != 0)) || ((pSVar18->hist).time != 0.0)) {\n        uVar16 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(Sym **)((long)__base + uVar16 * 8) = pSVar18;\n      }\n      if (pSVar2 + uVar1 == pSVar8) break;\n      pSVar6 = pSVar8 + 1;\n      pSVar18 = pSVar8;\n    }" { (expression_statement "pSVar8 = pSVar6;" (assignment_expression "pSVar8 = pSVar6" identifier = identifier) ;) (if_statement "if (((bVar5 == 0) || (pSVar18->ncalls != 0)) || ((pSVar18->hist).time != 0.0)) {\n        uVar16 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(Sym **)((long)__base + uVar16 * 8) = pSVar18;\n      }" if (parenthesized_expression "(((bVar5 == 0) || (pSVar18->ncalls != 0)) || ((pSVar18->hist).time != 0.0))" ( (binary_expression "((bVar5 == 0) || (pSVar18->ncalls != 0)) || ((pSVar18->hist).time != 0.0)" (parenthesized_expression "((bVar5 == 0) || (pSVar18->ncalls != 0))" ( (binary_expression "(bVar5 == 0) || (pSVar18->ncalls != 0)" (parenthesized_expression "(bVar5 == 0)" ( (binary_expression "bVar5 == 0" identifier == number_literal) )) || (parenthesized_expression "(pSVar18->ncalls != 0)" ( (binary_expression "pSVar18->ncalls != 0" (field_expression "pSVar18->ncalls" identifier -> field_identifier) != number_literal) ))) )) || (parenthesized_expression "((pSVar18->hist).time != 0.0)" ( (binary_expression "(pSVar18->hist).time != 0.0" (field_expression "(pSVar18->hist).time" (parenthesized_expression "(pSVar18->hist)" ( (field_expression "pSVar18->hist" identifier -> field_identifier) )) . field_identifier) != number_literal) ))) )) (compound_statement "{\n        uVar16 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(Sym **)((long)__base + uVar16 * 8) = pSVar18;\n      }" { (expression_statement "uVar16 = (ulong)local_70;" (assignment_expression "uVar16 = (ulong)local_70" identifier = (cast_expression "(ulong)local_70" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "local_70 = local_70 + 1;" (assignment_expression "local_70 = local_70 + 1" identifier = (binary_expression "local_70 + 1" identifier + number_literal)) ;) (expression_statement "*(Sym **)((long)__base + uVar16 * 8) = pSVar18;" (assignment_expression "*(Sym **)((long)__base + uVar16 * 8) = pSVar18" (pointer_expression "*(Sym **)((long)__base + uVar16 * 8)" * (cast_expression "(Sym **)((long)__base + uVar16 * 8)" ( (type_descriptor "Sym **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((long)__base + uVar16 * 8)" ( (binary_expression "(long)__base + uVar16 * 8" (cast_expression "(long)__base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "uVar16 * 8" identifier * number_literal)) )))) = identifier) ;) })) (if_statement "if (pSVar2 + uVar1 == pSVar8) break;" if (parenthesized_expression "(pSVar2 + uVar1 == pSVar8)" ( (binary_expression "pSVar2 + uVar1 == pSVar8" (binary_expression "pSVar2 + uVar1" identifier + identifier) == identifier) )) (break_statement "break;" break ;)) (expression_statement "pSVar6 = pSVar8 + 1;" (assignment_expression "pSVar6 = pSVar8 + 1" identifier = (binary_expression "pSVar8 + 1" identifier + number_literal)) ;) (expression_statement "pSVar18 = pSVar8;" (assignment_expression "pSVar18 = pSVar8" identifier = identifier) ;) })) (expression_statement "qsort(__base,(ulong)local_70,8,cmp_name);" (call_expression "qsort(__base,(ulong)local_70,8,cmp_name)" identifier (argument_list "(__base,(ulong)local_70,8,cmp_name)" ( identifier , (cast_expression "(ulong)local_70" ( (type_descriptor "ulong" type_identifier) ) identifier) , number_literal , identifier ))) ;) (expression_statement "local_68 = local_70;" (assignment_expression "local_68 = local_70" identifier = identifier) ;) (if_statement "if (num_cycles != 0) goto LAB_00106eaa;" if (parenthesized_expression "(num_cycles != 0)" ( (binary_expression "num_cycles != 0" identifier != number_literal) )) (goto_statement "goto LAB_00106eaa;" goto statement_identifier ;)) }))) (expression_statement "puts("\f");" (call_expression "puts("\f")" identifier (argument_list "("\f")" ( (string_literal ""\f"" " escape_sequence ") ))) ;) (expression_statement "pcVar9 = (char *)dcgettext("gprof","Index by function name\n\n",5);" (assignment_expression "pcVar9 = (char *)dcgettext("gprof","Index by function name\n\n",5)" identifier = (cast_expression "(char *)dcgettext("gprof","Index by function name\n\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext("gprof","Index by function name\n\n",5)" identifier (argument_list "("gprof","Index by function name\n\n",5)" ( (string_literal ""gprof"" " string_content ") , (string_literal ""Index by function name\n\n"" " string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar9);" (call_expression "printf(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier ))) ;) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" identifier = number_literal) ;) (expression_statement "uVar1 = (local_70 + 2) / 3;" (assignment_expression "uVar1 = (local_70 + 2) / 3" identifier = (binary_expression "(local_70 + 2) / 3" (parenthesized_expression "(local_70 + 2)" ( (binary_expression "local_70 + 2" identifier + number_literal) )) / number_literal)) ;) (if_statement "if (2 < local_70 + 2) {\n    do {\n      iVar19 = 5;\n      iVar15 = 0;\n      uVar20 = local_60;\njoined_r0x00106f52:\n      if (uVar20 < local_70) {\n        do {\n          pSVar2 = *(Sym **)((long)__base + (ulong)uVar20 * 8);\n          uVar16 = (ulong)(uint)(pSVar2->cg).index;\n          iVar7 = (int)buf;\n          if ((pSVar2->cg).print_flag == 0) {\n            sprintf(buf,"(%d)",uVar16);\n            if (uVar20 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output != 0) goto code_r0x00106fee;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7);\n            iVar3 = iVar15;\n            if (iVar15 <= iVar19 + -1) {\n              do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);\n            }\n            printf(" %s ",buf);\n            uVar14 = (pSVar2->cg).cyc.num;\n            pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf(buf,pcVar9,(ulong)uVar14);\n            printf("%s",buf);\n            puVar13 = (uint *)buf;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3;\n          }\n          else {\n            sprintf(buf,"[%d]",uVar16);\n            if (local_68 <= uVar20) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output == 0) {\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }\n          }\n          uVar20 = uVar20 + uVar1;\n          iVar19 = iVar19 + iVar4;\n          if (local_70 <= uVar20) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }" if (parenthesized_expression "(2 < local_70 + 2)" ( (binary_expression "2 < local_70 + 2" number_literal < (binary_expression "local_70 + 2" identifier + number_literal)) )) (compound_statement "{\n    do {\n      iVar19 = 5;\n      iVar15 = 0;\n      uVar20 = local_60;\njoined_r0x00106f52:\n      if (uVar20 < local_70) {\n        do {\n          pSVar2 = *(Sym **)((long)__base + (ulong)uVar20 * 8);\n          uVar16 = (ulong)(uint)(pSVar2->cg).index;\n          iVar7 = (int)buf;\n          if ((pSVar2->cg).print_flag == 0) {\n            sprintf(buf,"(%d)",uVar16);\n            if (uVar20 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output != 0) goto code_r0x00106fee;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7);\n            iVar3 = iVar15;\n            if (iVar15 <= iVar19 + -1) {\n              do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);\n            }\n            printf(" %s ",buf);\n            uVar14 = (pSVar2->cg).cyc.num;\n            pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf(buf,pcVar9,(ulong)uVar14);\n            printf("%s",buf);\n            puVar13 = (uint *)buf;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3;\n          }\n          else {\n            sprintf(buf,"[%d]",uVar16);\n            if (local_68 <= uVar20) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output == 0) {\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }\n          }\n          uVar20 = uVar20 + uVar1;\n          iVar19 = iVar19 + iVar4;\n          if (local_70 <= uVar20) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }" { (do_statement "do {\n      iVar19 = 5;\n      iVar15 = 0;\n      uVar20 = local_60;\njoined_r0x00106f52:\n      if (uVar20 < local_70) {\n        do {\n          pSVar2 = *(Sym **)((long)__base + (ulong)uVar20 * 8);\n          uVar16 = (ulong)(uint)(pSVar2->cg).index;\n          iVar7 = (int)buf;\n          if ((pSVar2->cg).print_flag == 0) {\n            sprintf(buf,"(%d)",uVar16);\n            if (uVar20 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output != 0) goto code_r0x00106fee;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7);\n            iVar3 = iVar15;\n            if (iVar15 <= iVar19 + -1) {\n              do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);\n            }\n            printf(" %s ",buf);\n            uVar14 = (pSVar2->cg).cyc.num;\n            pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf(buf,pcVar9,(ulong)uVar14);\n            printf("%s",buf);\n            puVar13 = (uint *)buf;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3;\n          }\n          else {\n            sprintf(buf,"[%d]",uVar16);\n            if (local_68 <= uVar20) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output == 0) {\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }\n          }\n          uVar20 = uVar20 + uVar1;\n          iVar19 = iVar19 + iVar4;\n          if (local_70 <= uVar20) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );" do (compound_statement "{\n      iVar19 = 5;\n      iVar15 = 0;\n      uVar20 = local_60;\njoined_r0x00106f52:\n      if (uVar20 < local_70) {\n        do {\n          pSVar2 = *(Sym **)((long)__base + (ulong)uVar20 * 8);\n          uVar16 = (ulong)(uint)(pSVar2->cg).index;\n          iVar7 = (int)buf;\n          if ((pSVar2->cg).print_flag == 0) {\n            sprintf(buf,"(%d)",uVar16);\n            if (uVar20 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output != 0) goto code_r0x00106fee;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7);\n            iVar3 = iVar15;\n            if (iVar15 <= iVar19 + -1) {\n              do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);\n            }\n            printf(" %s ",buf);\n            uVar14 = (pSVar2->cg).cyc.num;\n            pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf(buf,pcVar9,(ulong)uVar14);\n            printf("%s",buf);\n            puVar13 = (uint *)buf;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3;\n          }\n          else {\n            sprintf(buf,"[%d]",uVar16);\n            if (local_68 <= uVar20) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output == 0) {\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }\n          }\n          uVar20 = uVar20 + uVar1;\n          iVar19 = iVar19 + iVar4;\n          if (local_70 <= uVar20) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    }" { (expression_statement "iVar19 = 5;" (assignment_expression "iVar19 = 5" identifier = number_literal) ;) (expression_statement "iVar15 = 0;" (assignment_expression "iVar15 = 0" identifier = number_literal) ;) (expression_statement "uVar20 = local_60;" (assignment_expression "uVar20 = local_60" identifier = identifier) ;) (labeled_statement "joined_r0x00106f52:\n      if (uVar20 < local_70) {\n        do {\n          pSVar2 = *(Sym **)((long)__base + (ulong)uVar20 * 8);\n          uVar16 = (ulong)(uint)(pSVar2->cg).index;\n          iVar7 = (int)buf;\n          if ((pSVar2->cg).print_flag == 0) {\n            sprintf(buf,"(%d)",uVar16);\n            if (uVar20 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output != 0) goto code_r0x00106fee;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7);\n            iVar3 = iVar15;\n            if (iVar15 <= iVar19 + -1) {\n              do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);\n            }\n            printf(" %s ",buf);\n            uVar14 = (pSVar2->cg).cyc.num;\n            pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf(buf,pcVar9,(ulong)uVar14);\n            printf("%s",buf);\n            puVar13 = (uint *)buf;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3;\n          }\n          else {\n            sprintf(buf,"[%d]",uVar16);\n            if (local_68 <= uVar20) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output == 0) {\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }\n          }\n          uVar20 = uVar20 + uVar1;\n          iVar19 = iVar19 + iVar4;\n          if (local_70 <= uVar20) break;\n        } while( true );\n      }" statement_identifier : (if_statement "if (uVar20 < local_70) {\n        do {\n          pSVar2 = *(Sym **)((long)__base + (ulong)uVar20 * 8);\n          uVar16 = (ulong)(uint)(pSVar2->cg).index;\n          iVar7 = (int)buf;\n          if ((pSVar2->cg).print_flag == 0) {\n            sprintf(buf,"(%d)",uVar16);\n            if (uVar20 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output != 0) goto code_r0x00106fee;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7);\n            iVar3 = iVar15;\n            if (iVar15 <= iVar19 + -1) {\n              do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);\n            }\n            printf(" %s ",buf);\n            uVar14 = (pSVar2->cg).cyc.num;\n            pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf(buf,pcVar9,(ulong)uVar14);\n            printf("%s",buf);\n            puVar13 = (uint *)buf;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3;\n          }\n          else {\n            sprintf(buf,"[%d]",uVar16);\n            if (local_68 <= uVar20) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output == 0) {\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }\n          }\n          uVar20 = uVar20 + uVar1;\n          iVar19 = iVar19 + iVar4;\n          if (local_70 <= uVar20) break;\n        } while( true );\n      }" if (parenthesized_expression "(uVar20 < local_70)" ( (binary_expression "uVar20 < local_70" identifier < identifier) )) (compound_statement "{\n        do {\n          pSVar2 = *(Sym **)((long)__base + (ulong)uVar20 * 8);\n          uVar16 = (ulong)(uint)(pSVar2->cg).index;\n          iVar7 = (int)buf;\n          if ((pSVar2->cg).print_flag == 0) {\n            sprintf(buf,"(%d)",uVar16);\n            if (uVar20 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output != 0) goto code_r0x00106fee;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7);\n            iVar3 = iVar15;\n            if (iVar15 <= iVar19 + -1) {\n              do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);\n            }\n            printf(" %s ",buf);\n            uVar14 = (pSVar2->cg).cyc.num;\n            pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf(buf,pcVar9,(ulong)uVar14);\n            printf("%s",buf);\n            puVar13 = (uint *)buf;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3;\n          }\n          else {\n            sprintf(buf,"[%d]",uVar16);\n            if (local_68 <= uVar20) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output == 0) {\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }\n          }\n          uVar20 = uVar20 + uVar1;\n          iVar19 = iVar19 + iVar4;\n          if (local_70 <= uVar20) break;\n        } while( true );\n      }" { (do_statement "do {\n          pSVar2 = *(Sym **)((long)__base + (ulong)uVar20 * 8);\n          uVar16 = (ulong)(uint)(pSVar2->cg).index;\n          iVar7 = (int)buf;\n          if ((pSVar2->cg).print_flag == 0) {\n            sprintf(buf,"(%d)",uVar16);\n            if (uVar20 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output != 0) goto code_r0x00106fee;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7);\n            iVar3 = iVar15;\n            if (iVar15 <= iVar19 + -1) {\n              do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);\n            }\n            printf(" %s ",buf);\n            uVar14 = (pSVar2->cg).cyc.num;\n            pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf(buf,pcVar9,(ulong)uVar14);\n            printf("%s",buf);\n            puVar13 = (uint *)buf;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3;\n          }\n          else {\n            sprintf(buf,"[%d]",uVar16);\n            if (local_68 <= uVar20) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output == 0) {\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }\n          }\n          uVar20 = uVar20 + uVar1;\n          iVar19 = iVar19 + iVar4;\n          if (local_70 <= uVar20) break;\n        } while( true );" do (compound_statement "{\n          pSVar2 = *(Sym **)((long)__base + (ulong)uVar20 * 8);\n          uVar16 = (ulong)(uint)(pSVar2->cg).index;\n          iVar7 = (int)buf;\n          if ((pSVar2->cg).print_flag == 0) {\n            sprintf(buf,"(%d)",uVar16);\n            if (uVar20 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output != 0) goto code_r0x00106fee;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7);\n            iVar3 = iVar15;\n            if (iVar15 <= iVar19 + -1) {\n              do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);\n            }\n            printf(" %s ",buf);\n            uVar14 = (pSVar2->cg).cyc.num;\n            pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf(buf,pcVar9,(ulong)uVar14);\n            printf("%s",buf);\n            puVar13 = (uint *)buf;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3;\n          }\n          else {\n            sprintf(buf,"[%d]",uVar16);\n            if (local_68 <= uVar20) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output == 0) {\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }\n          }\n          uVar20 = uVar20 + uVar1;\n          iVar19 = iVar19 + iVar4;\n          if (local_70 <= uVar20) break;\n        }" { (expression_statement "pSVar2 = *(Sym **)((long)__base + (ulong)uVar20 * 8);" (assignment_expression "pSVar2 = *(Sym **)((long)__base + (ulong)uVar20 * 8)" identifier = (pointer_expression "*(Sym **)((long)__base + (ulong)uVar20 * 8)" * (cast_expression "(Sym **)((long)__base + (ulong)uVar20 * 8)" ( (type_descriptor "Sym **" type_identifier (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "((long)__base + (ulong)uVar20 * 8)" ( (binary_expression "(long)__base + (ulong)uVar20 * 8" (cast_expression "(long)__base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "(ulong)uVar20 * 8" (cast_expression "(ulong)uVar20" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) ))))) ;) (expression_statement "uVar16 = (ulong)(uint)(pSVar2->cg).index;" (assignment_expression "uVar16 = (ulong)(uint)(pSVar2->cg).index" identifier = (field_expression "(ulong)(uint)(pSVar2->cg).index" (call_expression "(ulong)(uint)(pSVar2->cg)" (call_expression "(ulong)(uint)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(uint)" ( identifier ))) (argument_list "(pSVar2->cg)" ( (field_expression "pSVar2->cg" identifier -> field_identifier) ))) . field_identifier)) ;) (expression_statement "iVar7 = (int)buf;" (assignment_expression "iVar7 = (int)buf" identifier = (cast_expression "(int)buf" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if ((pSVar2->cg).print_flag == 0) {\n            sprintf(buf,"(%d)",uVar16);\n            if (uVar20 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output != 0) goto code_r0x00106fee;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7);\n            iVar3 = iVar15;\n            if (iVar15 <= iVar19 + -1) {\n              do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);\n            }\n            printf(" %s ",buf);\n            uVar14 = (pSVar2->cg).cyc.num;\n            pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf(buf,pcVar9,(ulong)uVar14);\n            printf("%s",buf);\n            puVar13 = (uint *)buf;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3;\n          }\n          else {\n            sprintf(buf,"[%d]",uVar16);\n            if (local_68 <= uVar20) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output == 0) {\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }\n          }" if (parenthesized_expression "((pSVar2->cg).print_flag == 0)" ( (binary_expression "(pSVar2->cg).print_flag == 0" (field_expression "(pSVar2->cg).print_flag" (parenthesized_expression "(pSVar2->cg)" ( (field_expression "pSVar2->cg" identifier -> field_identifier) )) . field_identifier) == number_literal) )) (compound_statement "{\n            sprintf(buf,"(%d)",uVar16);\n            if (uVar20 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output != 0) goto code_r0x00106fee;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7);\n            iVar3 = iVar15;\n            if (iVar15 <= iVar19 + -1) {\n              do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);\n            }\n            printf(" %s ",buf);\n            uVar14 = (pSVar2->cg).cyc.num;\n            pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf(buf,pcVar9,(ulong)uVar14);\n            printf("%s",buf);\n            puVar13 = (uint *)buf;\n            do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);\n            bVar21 = (uVar17 & 0x8080) == 0;\n            if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }\n            if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }\n            iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3;\n          }" { (expression_statement "sprintf(buf,"(%d)",uVar16);" (call_expression "sprintf(buf,"(%d)",uVar16)" identifier (argument_list "(buf,"(%d)",uVar16)" ( identifier , (string_literal ""(%d)"" " string_content ") , identifier ))) ;) (if_statement "if (uVar20 < local_68) goto LAB_00106f7e;" if (parenthesized_expression "(uVar20 < local_68)" ( (binary_expression "uVar20 < local_68" identifier < identifier) )) (goto_statement "goto LAB_00106f7e;" goto statement_identifier ;)) (labeled_statement "LAB_00106fe6:\n            puVar13 = (uint *)buf;" statement_identifier : (expression_statement "puVar13 = (uint *)buf;" (assignment_expression "puVar13 = (uint *)buf" identifier = (cast_expression "(uint *)buf" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (if_statement "if (bsd_style_output != 0) goto code_r0x00106fee;" if (parenthesized_expression "(bsd_style_output != 0)" ( (binary_expression "bsd_style_output != 0" identifier != number_literal) )) (goto_statement "goto code_r0x00106fee;" goto statement_identifier ;)) (do_statement "do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);" do (compound_statement "{\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            }" { (expression_statement "puVar12 = puVar13;" (assignment_expression "puVar12 = puVar13" identifier = identifier) ;) (expression_statement "uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;" (assignment_expression "uVar17 = *puVar12 + 0xfefefeff & ~*puVar12" identifier = (binary_expression "*puVar12 + 0xfefefeff & ~*puVar12" (binary_expression "*puVar12 + 0xfefefeff" (pointer_expression "*puVar12" * identifier) + number_literal) & (unary_expression "~*puVar12" ~ (pointer_expression "*puVar12" * identifier)))) ;) (expression_statement "uVar14 = uVar17 & 0x80808080;" (assignment_expression "uVar14 = uVar17 & 0x80808080" identifier = (binary_expression "uVar17 & 0x80808080" identifier & number_literal)) ;) (expression_statement "puVar13 = puVar12 + 1;" (assignment_expression "puVar13 = puVar12 + 1" identifier = (binary_expression "puVar12 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar14 == 0)" ( (binary_expression "uVar14 == 0" identifier == number_literal) )) ;) (expression_statement "bVar21 = (uVar17 & 0x8080) == 0;" (assignment_expression "bVar21 = (uVar17 & 0x8080) == 0" identifier = (binary_expression "(uVar17 & 0x8080) == 0" (parenthesized_expression "(uVar17 & 0x8080)" ( (binary_expression "uVar17 & 0x8080" identifier & number_literal) )) == number_literal)) ;) (if_statement "if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }" if (parenthesized_expression "(bVar21)" ( identifier )) (compound_statement "{\n              uVar14 = uVar14 >> 0x10;\n            }" { (expression_statement "uVar14 = uVar14 >> 0x10;" (assignment_expression "uVar14 = uVar14 >> 0x10" identifier = (binary_expression "uVar14 >> 0x10" identifier >> number_literal)) ;) })) (if_statement "if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }" if (parenthesized_expression "(bVar21)" ( identifier )) (compound_statement "{\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }" { (expression_statement "puVar13 = (uint *)((long)puVar12 + 6);" (assignment_expression "puVar13 = (uint *)((long)puVar12 + 6)" identifier = (cast_expression "(uint *)((long)puVar12 + 6)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar12 + 6)" ( (binary_expression "(long)puVar12 + 6" (cast_expression "(long)puVar12" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) })) (expression_statement "iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7);" (assignment_expression "iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7)" identifier = (binary_expression "iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7)" identifier + (parenthesized_expression "((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7)" ( (binary_expression "(((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                              iVar7" (parenthesized_expression "(((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14))" ( (binary_expression "((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)" (parenthesized_expression "((int)puVar13 + -3)" ( (binary_expression "(int)puVar13 + -3" (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )) - (cast_expression "(uint)CARRY1((byte)uVar14,(byte)uVar14)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY1((byte)uVar14,(byte)uVar14)" identifier (argument_list "((byte)uVar14,(byte)uVar14)" ( (cast_expression "(byte)uVar14" ( (type_descriptor "byte" type_identifier) ) identifier) , (cast_expression "(byte)uVar14" ( (type_descriptor "byte" type_identifier) ) identifier) ))))) )) - identifier) )))) ;) (expression_statement "iVar3 = iVar15;" (assignment_expression "iVar3 = iVar15" identifier = identifier) ;) (if_statement "if (iVar15 <= iVar19 + -1) {\n              do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);\n            }" if (parenthesized_expression "(iVar15 <= iVar19 + -1)" ( (binary_expression "iVar15 <= iVar19 + -1" identifier <= (binary_expression "iVar19 + -1" identifier + number_literal)) )) (compound_statement "{\n              do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);\n            }" { (do_statement "do {\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              } while (iVar19 != iVar15);" do (compound_statement "{\n                iVar15 = iVar15 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar19;\n              }" { (expression_statement "iVar15 = iVar15 + 1;" (assignment_expression "iVar15 = iVar15 + 1" identifier = (binary_expression "iVar15 + 1" identifier + number_literal)) ;) (expression_statement "putc(0x20,stdout);" (call_expression "putc(0x20,stdout)" identifier (argument_list "(0x20,stdout)" ( number_literal , identifier ))) ;) (expression_statement "iVar3 = iVar19;" (assignment_expression "iVar3 = iVar19" identifier = identifier) ;) }) while (parenthesized_expression "(iVar19 != iVar15)" ( (binary_expression "iVar19 != iVar15" identifier != identifier) )) ;) })) (expression_statement "printf(" %s ",buf);" (call_expression "printf(" %s ",buf)" identifier (argument_list "(" %s ",buf)" ( (string_literal "" %s "" " string_content ") , identifier ))) ;) (expression_statement "uVar14 = (pSVar2->cg).cyc.num;" (assignment_expression "uVar14 = (pSVar2->cg).cyc.num" identifier = (field_expression "(pSVar2->cg).cyc.num" (field_expression "(pSVar2->cg).cyc" (parenthesized_expression "(pSVar2->cg)" ( (field_expression "pSVar2->cg" identifier -> field_identifier) )) . field_identifier) . field_identifier)) ;) (expression_statement "pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);" (assignment_expression "pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5)" identifier = (cast_expression "(char *)dcgettext("gprof","<cycle %d>",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext("gprof","<cycle %d>",5)" identifier (argument_list "("gprof","<cycle %d>",5)" ( (string_literal ""gprof"" " string_content ") , (string_literal ""<cycle %d>"" " string_content ") , number_literal ))))) ;) (expression_statement "sprintf(buf,pcVar9,(ulong)uVar14);" (call_expression "sprintf(buf,pcVar9,(ulong)uVar14)" identifier (argument_list "(buf,pcVar9,(ulong)uVar14)" ( identifier , identifier , (cast_expression "(ulong)uVar14" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (expression_statement "printf("%s",buf);" (call_expression "printf("%s",buf)" identifier (argument_list "("%s",buf)" ( (string_literal ""%s"" " string_content ") , identifier ))) ;) (expression_statement "puVar13 = (uint *)buf;" (assignment_expression "puVar13 = (uint *)buf" identifier = (cast_expression "(uint *)buf" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;) (do_statement "do {\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            } while (uVar14 == 0);" do (compound_statement "{\n              puVar12 = puVar13;\n              uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n              uVar14 = uVar17 & 0x80808080;\n              puVar13 = puVar12 + 1;\n            }" { (expression_statement "puVar12 = puVar13;" (assignment_expression "puVar12 = puVar13" identifier = identifier) ;) (expression_statement "uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;" (assignment_expression "uVar17 = *puVar12 + 0xfefefeff & ~*puVar12" identifier = (binary_expression "*puVar12 + 0xfefefeff & ~*puVar12" (binary_expression "*puVar12 + 0xfefefeff" (pointer_expression "*puVar12" * identifier) + number_literal) & (unary_expression "~*puVar12" ~ (pointer_expression "*puVar12" * identifier)))) ;) (expression_statement "uVar14 = uVar17 & 0x80808080;" (assignment_expression "uVar14 = uVar17 & 0x80808080" identifier = (binary_expression "uVar17 & 0x80808080" identifier & number_literal)) ;) (expression_statement "puVar13 = puVar12 + 1;" (assignment_expression "puVar13 = puVar12 + 1" identifier = (binary_expression "puVar12 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar14 == 0)" ( (binary_expression "uVar14 == 0" identifier == number_literal) )) ;) (expression_statement "bVar21 = (uVar17 & 0x8080) == 0;" (assignment_expression "bVar21 = (uVar17 & 0x8080) == 0" identifier = (binary_expression "(uVar17 & 0x8080) == 0" (parenthesized_expression "(uVar17 & 0x8080)" ( (binary_expression "uVar17 & 0x8080" identifier & number_literal) )) == number_literal)) ;) (if_statement "if (bVar21) {\n              uVar14 = uVar14 >> 0x10;\n            }" if (parenthesized_expression "(bVar21)" ( identifier )) (compound_statement "{\n              uVar14 = uVar14 >> 0x10;\n            }" { (expression_statement "uVar14 = uVar14 >> 0x10;" (assignment_expression "uVar14 = uVar14 >> 0x10" identifier = (binary_expression "uVar14 >> 0x10" identifier >> number_literal)) ;) })) (if_statement "if (bVar21) {\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }" if (parenthesized_expression "(bVar21)" ( identifier )) (compound_statement "{\n              puVar13 = (uint *)((long)puVar12 + 6);\n            }" { (expression_statement "puVar13 = (uint *)((long)puVar12 + 6);" (assignment_expression "puVar13 = (uint *)((long)puVar12 + 6)" identifier = (cast_expression "(uint *)((long)puVar12 + 6)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar12 + 6)" ( (binary_expression "(long)puVar12 + 6" (cast_expression "(long)puVar12" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) })) (expression_statement "iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3;" (assignment_expression "iVar15 = ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3" identifier = (binary_expression "((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7) +\n                     iVar3" (parenthesized_expression "((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7)" ( (binary_expression "(((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) - iVar7" (parenthesized_expression "(((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14))" ( (binary_expression "((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)" (parenthesized_expression "((int)puVar13 + -3)" ( (binary_expression "(int)puVar13 + -3" (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )) - (cast_expression "(uint)CARRY1((byte)uVar14,(byte)uVar14)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY1((byte)uVar14,(byte)uVar14)" identifier (argument_list "((byte)uVar14,(byte)uVar14)" ( (cast_expression "(byte)uVar14" ( (type_descriptor "byte" type_identifier) ) identifier) , (cast_expression "(byte)uVar14" ( (type_descriptor "byte" type_identifier) ) identifier) ))))) )) - identifier) )) + identifier)) ;) }) (else_clause "else {\n            sprintf(buf,"[%d]",uVar16);\n            if (local_68 <= uVar20) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output == 0) {\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }\n          }" else (compound_statement "{\n            sprintf(buf,"[%d]",uVar16);\n            if (local_68 <= uVar20) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar13 = (uint *)buf;\n            if (bsd_style_output == 0) {\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }\n          }" { (expression_statement "sprintf(buf,"[%d]",uVar16);" (call_expression "sprintf(buf,"[%d]",uVar16)" identifier (argument_list "(buf,"[%d]",uVar16)" ( identifier , (string_literal ""[%d]"" " string_content ") , identifier ))) ;) (if_statement "if (local_68 <= uVar20) goto LAB_00106fe6;" if (parenthesized_expression "(local_68 <= uVar20)" ( (binary_expression "local_68 <= uVar20" identifier <= identifier) )) (goto_statement "goto LAB_00106fe6;" goto statement_identifier ;)) (labeled_statement "LAB_00106f7e:\n            puVar13 = (uint *)buf;" statement_identifier : (expression_statement "puVar13 = (uint *)buf;" (assignment_expression "puVar13 = (uint *)buf" identifier = (cast_expression "(uint *)buf" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) identifier)) ;)) (if_statement "if (bsd_style_output == 0) {\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }" if (parenthesized_expression "(bsd_style_output == 0)" ( (binary_expression "bsd_style_output == 0" identifier == number_literal) )) (compound_statement "{\n              do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);\n              bVar21 = (uVar17 & 0x8080) == 0;\n              if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }\n              if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }\n              iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);\n              if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }\n              printf(" %s ",buf);\n              iVar7 = print_name_only(pSVar2);\n              iVar15 = iVar15 + iVar7;\n              if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }\n            }" { (do_statement "do {\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              } while (uVar14 == 0);" do (compound_statement "{\n                puVar12 = puVar13;\n                uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;\n                uVar14 = uVar17 & 0x80808080;\n                puVar13 = puVar12 + 1;\n              }" { (expression_statement "puVar12 = puVar13;" (assignment_expression "puVar12 = puVar13" identifier = identifier) ;) (expression_statement "uVar17 = *puVar12 + 0xfefefeff & ~*puVar12;" (assignment_expression "uVar17 = *puVar12 + 0xfefefeff & ~*puVar12" identifier = (binary_expression "*puVar12 + 0xfefefeff & ~*puVar12" (binary_expression "*puVar12 + 0xfefefeff" (pointer_expression "*puVar12" * identifier) + number_literal) & (unary_expression "~*puVar12" ~ (pointer_expression "*puVar12" * identifier)))) ;) (expression_statement "uVar14 = uVar17 & 0x80808080;" (assignment_expression "uVar14 = uVar17 & 0x80808080" identifier = (binary_expression "uVar17 & 0x80808080" identifier & number_literal)) ;) (expression_statement "puVar13 = puVar12 + 1;" (assignment_expression "puVar13 = puVar12 + 1" identifier = (binary_expression "puVar12 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar14 == 0)" ( (binary_expression "uVar14 == 0" identifier == number_literal) )) ;) (expression_statement "bVar21 = (uVar17 & 0x8080) == 0;" (assignment_expression "bVar21 = (uVar17 & 0x8080) == 0" identifier = (binary_expression "(uVar17 & 0x8080) == 0" (parenthesized_expression "(uVar17 & 0x8080)" ( (binary_expression "uVar17 & 0x8080" identifier & number_literal) )) == number_literal)) ;) (if_statement "if (bVar21) {\n                uVar14 = uVar14 >> 0x10;\n              }" if (parenthesized_expression "(bVar21)" ( identifier )) (compound_statement "{\n                uVar14 = uVar14 >> 0x10;\n              }" { (expression_statement "uVar14 = uVar14 >> 0x10;" (assignment_expression "uVar14 = uVar14 >> 0x10" identifier = (binary_expression "uVar14 >> 0x10" identifier >> number_literal)) ;) })) (if_statement "if (bVar21) {\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }" if (parenthesized_expression "(bVar21)" ( identifier )) (compound_statement "{\n                puVar13 = (uint *)((long)puVar12 + 6);\n              }" { (expression_statement "puVar13 = (uint *)((long)puVar12 + 6);" (assignment_expression "puVar13 = (uint *)((long)puVar12 + 6)" identifier = (cast_expression "(uint *)((long)puVar12 + 6)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar12 + 6)" ( (binary_expression "(long)puVar12 + 6" (cast_expression "(long)puVar12" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) })) (expression_statement "iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7);" (assignment_expression "iVar15 = iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7)" identifier = (binary_expression "iVar15 + ((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7)" identifier + (parenthesized_expression "((((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7)" ( (binary_expression "(((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)) -\n                                iVar7" (parenthesized_expression "(((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14))" ( (binary_expression "((int)puVar13 + -3) - (uint)CARRY1((byte)uVar14,(byte)uVar14)" (parenthesized_expression "((int)puVar13 + -3)" ( (binary_expression "(int)puVar13 + -3" (cast_expression "(int)puVar13" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )) - (cast_expression "(uint)CARRY1((byte)uVar14,(byte)uVar14)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY1((byte)uVar14,(byte)uVar14)" identifier (argument_list "((byte)uVar14,(byte)uVar14)" ( (cast_expression "(byte)uVar14" ( (type_descriptor "byte" type_identifier) ) identifier) , (cast_expression "(byte)uVar14" ( (type_descriptor "byte" type_identifier) ) identifier) ))))) )) - identifier) )))) ;) (if_statement "if (iVar15 <= iVar19 + -1) {\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }" if (parenthesized_expression "(iVar15 <= iVar19 + -1)" ( (binary_expression "iVar15 <= iVar19 + -1" identifier <= (binary_expression "iVar19 + -1" identifier + number_literal)) )) (compound_statement "{\n                do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);\n              }" { (do_statement "do {\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                } while (iVar15 != iVar19);" do (compound_statement "{\n                  iVar15 = iVar15 + 1;\n                  putc(0x20,stdout);\n                }" { (expression_statement "iVar15 = iVar15 + 1;" (assignment_expression "iVar15 = iVar15 + 1" identifier = (binary_expression "iVar15 + 1" identifier + number_literal)) ;) (expression_statement "putc(0x20,stdout);" (call_expression "putc(0x20,stdout)" identifier (argument_list "(0x20,stdout)" ( number_literal , identifier ))) ;) }) while (parenthesized_expression "(iVar15 != iVar19)" ( (binary_expression "iVar15 != iVar19" identifier != identifier) )) ;) })) (expression_statement "printf(" %s ",buf);" (call_expression "printf(" %s ",buf)" identifier (argument_list "(" %s ",buf)" ( (string_literal "" %s "" " string_content ") , identifier ))) ;) (expression_statement "iVar7 = print_name_only(pSVar2);" (assignment_expression "iVar7 = print_name_only(pSVar2)" identifier = (call_expression "print_name_only(pSVar2)" identifier (argument_list "(pSVar2)" ( identifier )))) ;) (expression_statement "iVar15 = iVar15 + iVar7;" (assignment_expression "iVar15 = iVar15 + iVar7" identifier = (binary_expression "iVar15 + iVar7" identifier + identifier)) ;) (if_statement "if (((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)) {\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }" if (parenthesized_expression "(((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0))" ( (binary_expression "((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)) &&\n                 (pSVar2->file != (Source_File *)0x0)" (parenthesized_expression "((line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0))" ( (binary_expression "(line_granularity == 0) && ((pSVar2->field_0x24 & 2) != 0)" (parenthesized_expression "(line_granularity == 0)" ( (binary_expression "line_granularity == 0" identifier == number_literal) )) && (parenthesized_expression "((pSVar2->field_0x24 & 2) != 0)" ( (binary_expression "(pSVar2->field_0x24 & 2) != 0" (parenthesized_expression "(pSVar2->field_0x24 & 2)" ( (binary_expression "pSVar2->field_0x24 & 2" (field_expression "pSVar2->field_0x24" identifier -> field_identifier) & number_literal) )) != number_literal) ))) )) && (parenthesized_expression "(pSVar2->file != (Source_File *)0x0)" ( (binary_expression "pSVar2->file != (Source_File *)0x0" (field_expression "pSVar2->file" identifier -> field_identifier) != (cast_expression "(Source_File *)0x0" ( (type_descriptor "Source_File *" type_identifier (abstract_pointer_declarator "*" *)) ) number_literal)) ))) )) (compound_statement "{\n                pcVar9 = pSVar2->file->name;\n                if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar9);\n                sVar11 = strlen(pcVar9);\n                iVar15 = iVar15 + 3 + (int)sVar11;\n              }" { (expression_statement "pcVar9 = pSVar2->file->name;" (assignment_expression "pcVar9 = pSVar2->file->name" identifier = (field_expression "pSVar2->file->name" (field_expression "pSVar2->file" identifier -> field_identifier) -> field_identifier)) ;) (if_statement "if (print_path == 0) {\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }" if (parenthesized_expression "(print_path == 0)" ( (binary_expression "print_path == 0" identifier == number_literal) )) (compound_statement "{\n                  pcVar10 = strrchr(pcVar9,0x2f);\n                  if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }\n                }" { (expression_statement "pcVar10 = strrchr(pcVar9,0x2f);" (assignment_expression "pcVar10 = strrchr(pcVar9,0x2f)" identifier = (call_expression "strrchr(pcVar9,0x2f)" identifier (argument_list "(pcVar9,0x2f)" ( identifier , number_literal )))) ;) (if_statement "if (pcVar10 != (char *)0x0) {\n                    pcVar9 = pcVar10 + 1;\n                  }" if (parenthesized_expression "(pcVar10 != (char *)0x0)" ( (binary_expression "pcVar10 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    pcVar9 = pcVar10 + 1;\n                  }" { (expression_statement "pcVar9 = pcVar10 + 1;" (assignment_expression "pcVar9 = pcVar10 + 1" identifier = (binary_expression "pcVar10 + 1" identifier + number_literal)) ;) })) })) (expression_statement "printf(" (%s)",pcVar9);" (call_expression "printf(" (%s)",pcVar9)" identifier (argument_list "(" (%s)",pcVar9)" ( (string_literal "" (%s)"" " string_content ") , identifier ))) ;) (expression_statement "sVar11 = strlen(pcVar9);" (assignment_expression "sVar11 = strlen(pcVar9)" identifier = (call_expression "strlen(pcVar9)" identifier (argument_list "(pcVar9)" ( identifier )))) ;) (expression_statement "iVar15 = iVar15 + 3 + (int)sVar11;" (assignment_expression "iVar15 = iVar15 + 3 + (int)sVar11" identifier = (binary_expression "iVar15 + 3 + (int)sVar11" (binary_expression "iVar15 + 3" identifier + number_literal) + (cast_expression "(int)sVar11" ( (type_descriptor "int" primitive_type) ) identifier))) ;) })) }) (else_clause "else {\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }" else (compound_statement "{\n              printf("%6.6s %-19.19s",buf,pSVar2->name);\n            }" { (expression_statement "printf("%6.6s %-19.19s",buf,pSVar2->name);" (call_expression "printf("%6.6s %-19.19s",buf,pSVar2->name)" identifier (argument_list "("%6.6s %-19.19s",buf,pSVar2->name)" ( (string_literal ""%6.6s %-19.19s"" " string_content ") , identifier , (field_expression "pSVar2->name" identifier -> field_identifier) ))) ;) }))) }))) (expression_statement "uVar20 = uVar20 + uVar1;" (assignment_expression "uVar20 = uVar20 + uVar1" identifier = (binary_expression "uVar20 + uVar1" identifier + identifier)) ;) (expression_statement "iVar19 = iVar19 + iVar4;" (assignment_expression "iVar19 = iVar19 + iVar4" identifier = (binary_expression "iVar19 + iVar4" identifier + identifier)) ;) (if_statement "if (local_70 <= uVar20) break;" if (parenthesized_expression "(local_70 <= uVar20)" ( (binary_expression "local_70 <= uVar20" identifier <= identifier) )) (break_statement "break;" break ;)) }) while (parenthesized_expression "( true )" ( true )) ;) }))) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) (expression_statement "local_60 = local_60 + 1;" (assignment_expression "local_60 = local_60 + 1" identifier = (binary_expression "local_60 + 1" identifier + number_literal)) ;) (if_statement "if (uVar1 <= local_60) break;" if (parenthesized_expression "(uVar1 <= local_60)" ( (binary_expression "uVar1 <= local_60" identifier <= identifier) )) (break_statement "break;" break ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) (labeled_statement "LAB_00107070:\n  free(__base);" statement_identifier : (expression_statement "free(__base);" (call_expression "free(__base)" identifier (argument_list "(__base)" ( identifier ))) ;)) (return_statement "return;" return ;) (labeled_statement "code_r0x00106fee:\n  printf("%6.6s ",buf);" statement_identifier : (expression_statement "printf("%6.6s ",buf);" (call_expression "printf("%6.6s ",buf)" identifier (argument_list "("%6.6s ",buf)" ( (string_literal ""%6.6s "" " string_content ") , identifier ))) ;)) (expression_statement "uVar14 = (pSVar2->cg).cyc.num;" (assignment_expression "uVar14 = (pSVar2->cg).cyc.num" identifier = (field_expression "(pSVar2->cg).cyc.num" (field_expression "(pSVar2->cg).cyc" (parenthesized_expression "(pSVar2->cg)" ( (field_expression "pSVar2->cg" identifier -> field_identifier) )) . field_identifier) . field_identifier)) ;) (expression_statement "pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5);" (assignment_expression "pcVar9 = (char *)dcgettext("gprof","<cycle %d>",5)" identifier = (cast_expression "(char *)dcgettext("gprof","<cycle %d>",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext("gprof","<cycle %d>",5)" identifier (argument_list "("gprof","<cycle %d>",5)" ( (string_literal ""gprof"" " string_content ") , (string_literal ""<cycle %d>"" " string_content ") , number_literal ))))) ;) (expression_statement "sprintf(buf,pcVar9,(ulong)uVar14);" (call_expression "sprintf(buf,pcVar9,(ulong)uVar14)" identifier (argument_list "(buf,pcVar9,(ulong)uVar14)" ( identifier , identifier , (cast_expression "(ulong)uVar14" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (expression_statement "printf("%-19.19s",buf);" (call_expression "printf("%-19.19s",buf)" identifier (argument_list "("%-19.19s",buf)" ( (string_literal ""%-19.19s"" " string_content ") , identifier ))) ;) (expression_statement "uVar20 = uVar20 + uVar1;" (assignment_expression "uVar20 = uVar20 + uVar1" identifier = (binary_expression "uVar20 + uVar1" identifier + identifier)) ;) (expression_statement "iVar19 = iVar19 + iVar4;" (assignment_expression "iVar19 = iVar19 + iVar4" identifier = (binary_expression "iVar19 + iVar4" identifier + identifier)) ;) (goto_statement "goto joined_r0x00106f52;" goto statement_identifier ;) })))
(translation_unit "void FUN_00106dd0(void)\n\n{\n  uint uVar1;\n  long lVar2;\n  int iVar3;\n  int iVar4;\n  long lVar5;\n  int iVar6;\n  void *__base;\n  long lVar7;\n  char *pcVar8;\n  char *pcVar9;\n  size_t sVar10;\n  uint *puVar11;\n  uint *puVar12;\n  uint uVar13;\n  int iVar14;\n  ulong uVar15;\n  uint uVar16;\n  long lVar17;\n  int iVar18;\n  uint uVar19;\n  bool bVar20;\n  uint local_70;\n  uint local_68;\n  uint local_60;\n  uint local_58 [10];\n  \n  iVar4 = (DAT_001182e8 + -1) / 3;\n  __base = (void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3);\n  iVar18 = DAT_001182e0;\n  local_68 = DAT_00119b30;\n  if (DAT_00119b30 == 0) {\n    qsort(__base,0,8,FUN_00106300);\n    if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = DAT_00119ad0;\n    lVar2 = DAT_00119ac0;\n    uVar15 = 1;\n    uVar19 = local_68;\n    do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);\n  }\n  else {\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }\n  puts("\f");\n  pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n  printf(pcVar8);\n  local_60 = 0;\n  uVar1 = (local_70 + 2) / 3;\n  if (2 < local_70 + 2) {\n    do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }\nLAB_00107070:\n  free(__base);\n  return;\ncode_r0x00106fee:\n  printf("%6.6s ",local_58);\n  uVar13 = *(uint *)(lVar2 + 0x130);\n  pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n  sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n  printf("%-19.19s",local_58);\n  uVar19 = uVar19 + uVar1;\n  iVar18 = iVar18 + iVar4;\n  goto joined_r0x00106f52;\n}\n\n" (function_definition "void FUN_00106dd0(void)\n\n{\n  uint uVar1;\n  long lVar2;\n  int iVar3;\n  int iVar4;\n  long lVar5;\n  int iVar6;\n  void *__base;\n  long lVar7;\n  char *pcVar8;\n  char *pcVar9;\n  size_t sVar10;\n  uint *puVar11;\n  uint *puVar12;\n  uint uVar13;\n  int iVar14;\n  ulong uVar15;\n  uint uVar16;\n  long lVar17;\n  int iVar18;\n  uint uVar19;\n  bool bVar20;\n  uint local_70;\n  uint local_68;\n  uint local_60;\n  uint local_58 [10];\n  \n  iVar4 = (DAT_001182e8 + -1) / 3;\n  __base = (void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3);\n  iVar18 = DAT_001182e0;\n  local_68 = DAT_00119b30;\n  if (DAT_00119b30 == 0) {\n    qsort(__base,0,8,FUN_00106300);\n    if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = DAT_00119ad0;\n    lVar2 = DAT_00119ac0;\n    uVar15 = 1;\n    uVar19 = local_68;\n    do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);\n  }\n  else {\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }\n  puts("\f");\n  pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n  printf(pcVar8);\n  local_60 = 0;\n  uVar1 = (local_70 + 2) / 3;\n  if (2 < local_70 + 2) {\n    do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }\nLAB_00107070:\n  free(__base);\n  return;\ncode_r0x00106fee:\n  printf("%6.6s ",local_58);\n  uVar13 = *(uint *)(lVar2 + 0x130);\n  pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n  sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n  printf("%-19.19s",local_58);\n  uVar19 = uVar19 + uVar1;\n  iVar18 = iVar18 + iVar4;\n  goto joined_r0x00106f52;\n}" primitive_type (function_declarator "FUN_00106dd0(void)" identifier (parameter_list "(void)" ( (parameter_declaration "void" primitive_type) ))) (compound_statement "{\n  uint uVar1;\n  long lVar2;\n  int iVar3;\n  int iVar4;\n  long lVar5;\n  int iVar6;\n  void *__base;\n  long lVar7;\n  char *pcVar8;\n  char *pcVar9;\n  size_t sVar10;\n  uint *puVar11;\n  uint *puVar12;\n  uint uVar13;\n  int iVar14;\n  ulong uVar15;\n  uint uVar16;\n  long lVar17;\n  int iVar18;\n  uint uVar19;\n  bool bVar20;\n  uint local_70;\n  uint local_68;\n  uint local_60;\n  uint local_58 [10];\n  \n  iVar4 = (DAT_001182e8 + -1) / 3;\n  __base = (void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3);\n  iVar18 = DAT_001182e0;\n  local_68 = DAT_00119b30;\n  if (DAT_00119b30 == 0) {\n    qsort(__base,0,8,FUN_00106300);\n    if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = DAT_00119ad0;\n    lVar2 = DAT_00119ac0;\n    uVar15 = 1;\n    uVar19 = local_68;\n    do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);\n  }\n  else {\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }\n  puts("\f");\n  pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n  printf(pcVar8);\n  local_60 = 0;\n  uVar1 = (local_70 + 2) / 3;\n  if (2 < local_70 + 2) {\n    do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }\nLAB_00107070:\n  free(__base);\n  return;\ncode_r0x00106fee:\n  printf("%6.6s ",local_58);\n  uVar13 = *(uint *)(lVar2 + 0x130);\n  pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n  sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n  printf("%-19.19s",local_58);\n  uVar19 = uVar19 + uVar1;\n  iVar18 = iVar18 + iVar4;\n  goto joined_r0x00106f52;\n}" { (declaration "uint uVar1;" type_identifier identifier ;) (declaration "long lVar2;" (sized_type_specifier "long" long) identifier ;) (declaration "int iVar3;" primitive_type identifier ;) (declaration "int iVar4;" primitive_type identifier ;) (declaration "long lVar5;" (sized_type_specifier "long" long) identifier ;) (declaration "int iVar6;" primitive_type identifier ;) (declaration "void *__base;" primitive_type (pointer_declarator "*__base" * identifier) ;) (declaration "long lVar7;" (sized_type_specifier "long" long) identifier ;) (declaration "char *pcVar8;" primitive_type (pointer_declarator "*pcVar8" * identifier) ;) (declaration "char *pcVar9;" primitive_type (pointer_declarator "*pcVar9" * identifier) ;) (declaration "size_t sVar10;" primitive_type identifier ;) (declaration "uint *puVar11;" type_identifier (pointer_declarator "*puVar11" * identifier) ;) (declaration "uint *puVar12;" type_identifier (pointer_declarator "*puVar12" * identifier) ;) (declaration "uint uVar13;" type_identifier identifier ;) (declaration "int iVar14;" primitive_type identifier ;) (declaration "ulong uVar15;" type_identifier identifier ;) (declaration "uint uVar16;" type_identifier identifier ;) (declaration "long lVar17;" (sized_type_specifier "long" long) identifier ;) (declaration "int iVar18;" primitive_type identifier ;) (declaration "uint uVar19;" type_identifier identifier ;) (declaration "bool bVar20;" primitive_type identifier ;) (declaration "uint local_70;" type_identifier identifier ;) (declaration "uint local_68;" type_identifier identifier ;) (declaration "uint local_60;" type_identifier identifier ;) (declaration "uint local_58 [10];" type_identifier (array_declarator "local_58 [10]" identifier [ number_literal ]) ;) (expression_statement "iVar4 = (DAT_001182e8 + -1) / 3;" (assignment_expression "iVar4 = (DAT_001182e8 + -1) / 3" identifier = (binary_expression "(DAT_001182e8 + -1) / 3" (parenthesized_expression "(DAT_001182e8 + -1)" ( (binary_expression "DAT_001182e8 + -1" identifier + number_literal) )) / number_literal)) ;) (expression_statement "__base = (void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3);" (assignment_expression "__base = (void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3)" identifier = (cast_expression "(void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3)" ( (type_descriptor "void *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3)" identifier (argument_list "((ulong)(DAT_00119ad0 + DAT_00119b30) << 3)" ( (binary_expression "(ulong)(DAT_00119ad0 + DAT_00119b30) << 3" (call_expression "(ulong)(DAT_00119ad0 + DAT_00119b30)" (parenthesized_expression "(ulong)" ( identifier )) (argument_list "(DAT_00119ad0 + DAT_00119b30)" ( (binary_expression "DAT_00119ad0 + DAT_00119b30" identifier + identifier) ))) << number_literal) ))))) ;) (expression_statement "iVar18 = DAT_001182e0;" (assignment_expression "iVar18 = DAT_001182e0" identifier = identifier) ;) (expression_statement "local_68 = DAT_00119b30;" (assignment_expression "local_68 = DAT_00119b30" identifier = identifier) ;) (if_statement "if (DAT_00119b30 == 0) {\n    qsort(__base,0,8,FUN_00106300);\n    if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = DAT_00119ad0;\n    lVar2 = DAT_00119ac0;\n    uVar15 = 1;\n    uVar19 = local_68;\n    do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);\n  }\n  else {\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }" if (parenthesized_expression "(DAT_00119b30 == 0)" ( (binary_expression "DAT_00119b30 == 0" identifier == number_literal) )) (compound_statement "{\n    qsort(__base,0,8,FUN_00106300);\n    if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = DAT_00119ad0;\n    lVar2 = DAT_00119ac0;\n    uVar15 = 1;\n    uVar19 = local_68;\n    do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);\n  }" { (expression_statement "qsort(__base,0,8,FUN_00106300);" (call_expression "qsort(__base,0,8,FUN_00106300)" identifier (argument_list "(__base,0,8,FUN_00106300)" ( identifier , number_literal , number_literal , identifier ))) ;) (if_statement "if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }" if (parenthesized_expression "(DAT_00119ad0 == 0)" ( (binary_expression "DAT_00119ad0 == 0" identifier == number_literal) )) (compound_statement "{\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }" { (expression_statement "puts("\f");" (call_expression "puts("\f")" identifier (argument_list "("\f")" ( (string_literal ""\f"" " escape_sequence ") ))) ;) (expression_statement "pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5)" identifier = (cast_expression "(char *)dcgettext("gprof","Index by function name\n\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext("gprof","Index by function name\n\n",5)" identifier (argument_list "("gprof","Index by function name\n\n",5)" ( (string_literal ""gprof"" " string_content ") , (string_literal ""Index by function name\n\n"" " string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar8);" (call_expression "printf(pcVar8)" identifier (argument_list "(pcVar8)" ( identifier ))) ;) (goto_statement "goto LAB_00107070;" goto statement_identifier ;) })) (labeled_statement "LAB_00106eaa:\n    uVar1 = DAT_00119ad0;" statement_identifier : (expression_statement "uVar1 = DAT_00119ad0;" (assignment_expression "uVar1 = DAT_00119ad0" identifier = identifier) ;)) (expression_statement "lVar2 = DAT_00119ac0;" (assignment_expression "lVar2 = DAT_00119ac0" identifier = identifier) ;) (expression_statement "uVar15 = 1;" (assignment_expression "uVar15 = 1" identifier = number_literal) ;) (expression_statement "uVar19 = local_68;" (assignment_expression "uVar19 = local_68" identifier = identifier) ;) (do_statement "do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);" do (compound_statement "{\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    }" { (expression_statement "local_70 = uVar19 + 1;" (assignment_expression "local_70 = uVar19 + 1" identifier = (binary_expression "uVar19 + 1" identifier + number_literal)) ;) (expression_statement "uVar13 = (int)uVar15 + 1;" (assignment_expression "uVar13 = (int)uVar15 + 1" identifier = (binary_expression "(int)uVar15 + 1" (cast_expression "(int)uVar15" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal)) ;) (expression_statement "*(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;" (assignment_expression "*(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2" (pointer_expression "*(ulong *)((long)__base + (ulong)uVar19 * 8)" * (cast_expression "(ulong *)((long)__base + (ulong)uVar19 * 8)" ( (type_descriptor "ulong *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)__base + (ulong)uVar19 * 8)" ( (binary_expression "(long)__base + (ulong)uVar19 * 8" (cast_expression "(long)__base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "(ulong)uVar19 * 8" (cast_expression "(ulong)uVar19" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) )))) = (binary_expression "uVar15 * 0x158 + lVar2" (binary_expression "uVar15 * 0x158" identifier * number_literal) + identifier)) ;) (expression_statement "uVar15 = (ulong)uVar13;" (assignment_expression "uVar15 = (ulong)uVar13" identifier = (cast_expression "(ulong)uVar13" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "uVar19 = local_70;" (assignment_expression "uVar19 = local_70" identifier = identifier) ;) }) while (parenthesized_expression "(uVar13 <= uVar1)" ( (binary_expression "uVar13 <= uVar1" identifier <= identifier) )) ;) }) (else_clause "else {\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }" else (compound_statement "{\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }" { (expression_statement "uVar1 = DAT_00119b30 - 1;" (assignment_expression "uVar1 = DAT_00119b30 - 1" identifier = (binary_expression "DAT_00119b30 - 1" identifier - number_literal)) ;) (expression_statement "local_70 = 0;" (assignment_expression "local_70 = 0" identifier = number_literal) ;) (expression_statement "lVar2 = DAT_00119b38 + 0x158;" (assignment_expression "lVar2 = DAT_00119b38 + 0x158" identifier = (binary_expression "DAT_00119b38 + 0x158" identifier + number_literal)) ;) (expression_statement "lVar5 = lVar2;" (assignment_expression "lVar5 = lVar2" identifier = identifier) ;) (expression_statement "lVar17 = DAT_00119b38;" (assignment_expression "lVar17 = DAT_00119b38" identifier = identifier) ;) (while_statement "while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }" while (parenthesized_expression "( true )" ( true )) (compound_statement "{\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }" { (expression_statement "lVar7 = lVar5;" (assignment_expression "lVar7 = lVar5" identifier = identifier) ;) (if_statement "if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }" if (parenthesized_expression "(((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))" ( (binary_expression "((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0)" (parenthesized_expression "((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0))" ( (binary_expression "(iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)" (parenthesized_expression "(iVar18 == 0)" ( (binary_expression "iVar18 == 0" identifier == number_literal) )) || (parenthesized_expression "(*(long *)(lVar17 + 0x28) != 0)" ( (binary_expression "*(long *)(lVar17 + 0x28) != 0" (pointer_expression "*(long *)(lVar17 + 0x28)" * (cast_expression "(long *)(lVar17 + 0x28)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0x28)" ( (binary_expression "lVar17 + 0x28" identifier + number_literal) )))) != number_literal) ))) )) || (parenthesized_expression "(*(double *)(lVar17 + 0xe8) != 0.0)" ( (binary_expression "*(double *)(lVar17 + 0xe8) != 0.0" (pointer_expression "*(double *)(lVar17 + 0xe8)" * (cast_expression "(double *)(lVar17 + 0xe8)" ( (type_descriptor "double *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar17 + 0xe8)" ( (binary_expression "lVar17 + 0xe8" identifier + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }" { (expression_statement "uVar15 = (ulong)local_70;" (assignment_expression "uVar15 = (ulong)local_70" identifier = (cast_expression "(ulong)local_70" ( (type_descriptor "ulong" type_identifier) ) identifier)) ;) (expression_statement "local_70 = local_70 + 1;" (assignment_expression "local_70 = local_70 + 1" identifier = (binary_expression "local_70 + 1" identifier + number_literal)) ;) (expression_statement "*(long *)((long)__base + uVar15 * 8) = lVar17;" (assignment_expression "*(long *)((long)__base + uVar15 * 8) = lVar17" (pointer_expression "*(long *)((long)__base + uVar15 * 8)" * (cast_expression "(long *)((long)__base + uVar15 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)__base + uVar15 * 8)" ( (binary_expression "(long)__base + uVar15 * 8" (cast_expression "(long)__base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "uVar15 * 8" identifier * number_literal)) )))) = identifier) ;) })) (if_statement "if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;" if (parenthesized_expression "((ulong)uVar1 * 0x158 + lVar2 == lVar7)" ( (binary_expression "(ulong)uVar1 * 0x158 + lVar2 == lVar7" (binary_expression "(ulong)uVar1 * 0x158 + lVar2" (binary_expression "(ulong)uVar1 * 0x158" (cast_expression "(ulong)uVar1" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal) + identifier) == identifier) )) (break_statement "break;" break ;)) (expression_statement "lVar5 = lVar7 + 0x158;" (assignment_expression "lVar5 = lVar7 + 0x158" identifier = (binary_expression "lVar7 + 0x158" identifier + number_literal)) ;) (expression_statement "lVar17 = lVar7;" (assignment_expression "lVar17 = lVar7" identifier = identifier) ;) })) (expression_statement "qsort(__base,(ulong)local_70,8,FUN_00106300);" (call_expression "qsort(__base,(ulong)local_70,8,FUN_00106300)" identifier (argument_list "(__base,(ulong)local_70,8,FUN_00106300)" ( identifier , (cast_expression "(ulong)local_70" ( (type_descriptor "ulong" type_identifier) ) identifier) , number_literal , identifier ))) ;) (expression_statement "local_68 = local_70;" (assignment_expression "local_68 = local_70" identifier = identifier) ;) (if_statement "if (DAT_00119ad0 != 0) goto LAB_00106eaa;" if (parenthesized_expression "(DAT_00119ad0 != 0)" ( (binary_expression "DAT_00119ad0 != 0" identifier != number_literal) )) (goto_statement "goto LAB_00106eaa;" goto statement_identifier ;)) }))) (expression_statement "puts("\f");" (call_expression "puts("\f")" identifier (argument_list "("\f")" ( (string_literal ""\f"" " escape_sequence ") ))) ;) (expression_statement "pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5)" identifier = (cast_expression "(char *)dcgettext("gprof","Index by function name\n\n",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext("gprof","Index by function name\n\n",5)" identifier (argument_list "("gprof","Index by function name\n\n",5)" ( (string_literal ""gprof"" " string_content ") , (string_literal ""Index by function name\n\n"" " string_content escape_sequence escape_sequence ") , number_literal ))))) ;) (expression_statement "printf(pcVar8);" (call_expression "printf(pcVar8)" identifier (argument_list "(pcVar8)" ( identifier ))) ;) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" identifier = number_literal) ;) (expression_statement "uVar1 = (local_70 + 2) / 3;" (assignment_expression "uVar1 = (local_70 + 2) / 3" identifier = (binary_expression "(local_70 + 2) / 3" (parenthesized_expression "(local_70 + 2)" ( (binary_expression "local_70 + 2" identifier + number_literal) )) / number_literal)) ;) (if_statement "if (2 < local_70 + 2) {\n    do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }" if (parenthesized_expression "(2 < local_70 + 2)" ( (binary_expression "2 < local_70 + 2" number_literal < (binary_expression "local_70 + 2" identifier + number_literal)) )) (compound_statement "{\n    do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }" { (do_statement "do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );" do (compound_statement "{\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    }" { (expression_statement "iVar18 = 5;" (assignment_expression "iVar18 = 5" identifier = number_literal) ;) (expression_statement "iVar14 = 0;" (assignment_expression "iVar14 = 0" identifier = number_literal) ;) (expression_statement "uVar19 = local_60;" (assignment_expression "uVar19 = local_60" identifier = identifier) ;) (labeled_statement "joined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }" statement_identifier : (if_statement "if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }" if (parenthesized_expression "(uVar19 < local_70)" ( (binary_expression "uVar19 < local_70" identifier < identifier) )) (compound_statement "{\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }" { (do_statement "do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );" do (compound_statement "{\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        }" { (expression_statement "lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);" (assignment_expression "lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8)" identifier = (pointer_expression "*(long *)((long)__base + (ulong)uVar19 * 8)" * (cast_expression "(long *)((long)__base + (ulong)uVar19 * 8)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)__base + (ulong)uVar19 * 8)" ( (binary_expression "(long)__base + (ulong)uVar19 * 8" (cast_expression "(long)__base" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + (binary_expression "(ulong)uVar19 * 8" (cast_expression "(ulong)uVar19" ( (type_descriptor "ulong" type_identifier) ) identifier) * number_literal)) ))))) ;) (expression_statement "iVar6 = (int)local_58;" (assignment_expression "iVar6 = (int)local_58" identifier = (cast_expression "(int)local_58" ( (type_descriptor "int" primitive_type) ) identifier)) ;) (if_statement "if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }" if (parenthesized_expression "(*(int *)(lVar2 + 0x110) == 0)" ( (binary_expression "*(int *)(lVar2 + 0x110) == 0" (pointer_expression "*(int *)(lVar2 + 0x110)" * (cast_expression "(int *)(lVar2 + 0x110)" ( (type_descriptor "int *" primitive_type (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x110)" ( (binary_expression "lVar2 + 0x110" identifier + number_literal) )))) == number_literal) )) (compound_statement "{\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }" { (expression_statement "sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));" (call_expression "sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108))" identifier (argument_list "((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108))" ( (cast_expression "(char *)local_58" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""(%d)"" " string_content ") , (binary_expression "(ulong)*(uint *)(lVar2 + 0x108)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(lVar2 + 0x108)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x108)" ( (binary_expression "lVar2 + 0x108" identifier + number_literal) )))) ))) ;) (if_statement "if (uVar19 < local_68) goto LAB_00106f7e;" if (parenthesized_expression "(uVar19 < local_68)" ( (binary_expression "uVar19 < local_68" identifier < identifier) )) (goto_statement "goto LAB_00106f7e;" goto statement_identifier ;)) (labeled_statement "LAB_00106fe6:\n            puVar12 = local_58;" statement_identifier : (expression_statement "puVar12 = local_58;" (assignment_expression "puVar12 = local_58" identifier = identifier) ;)) (if_statement "if (DAT_001195dc != 0) goto code_r0x00106fee;" if (parenthesized_expression "(DAT_001195dc != 0)" ( (binary_expression "DAT_001195dc != 0" identifier != number_literal) )) (goto_statement "goto code_r0x00106fee;" goto statement_identifier ;)) (do_statement "do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);" do (compound_statement "{\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            }" { (expression_statement "puVar11 = puVar12;" (assignment_expression "puVar11 = puVar12" identifier = identifier) ;) (expression_statement "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;" (assignment_expression "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11" identifier = (binary_expression "*puVar11 + 0xfefefeff & ~*puVar11" (binary_expression "*puVar11 + 0xfefefeff" (pointer_expression "*puVar11" * identifier) + number_literal) & (unary_expression "~*puVar11" ~ (pointer_expression "*puVar11" * identifier)))) ;) (expression_statement "uVar13 = uVar16 & 0x80808080;" (assignment_expression "uVar13 = uVar16 & 0x80808080" identifier = (binary_expression "uVar16 & 0x80808080" identifier & number_literal)) ;) (expression_statement "puVar12 = puVar11 + 1;" (assignment_expression "puVar12 = puVar11 + 1" identifier = (binary_expression "puVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar13 == 0)" ( (binary_expression "uVar13 == 0" identifier == number_literal) )) ;) (expression_statement "bVar20 = (uVar16 & 0x8080) == 0;" (assignment_expression "bVar20 = (uVar16 & 0x8080) == 0" identifier = (binary_expression "(uVar16 & 0x8080) == 0" (parenthesized_expression "(uVar16 & 0x8080)" ( (binary_expression "uVar16 & 0x8080" identifier & number_literal) )) == number_literal)) ;) (if_statement "if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }" if (parenthesized_expression "(bVar20)" ( identifier )) (compound_statement "{\n              uVar13 = uVar13 >> 0x10;\n            }" { (expression_statement "uVar13 = uVar13 >> 0x10;" (assignment_expression "uVar13 = uVar13 >> 0x10" identifier = (binary_expression "uVar13 >> 0x10" identifier >> number_literal)) ;) })) (if_statement "if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }" if (parenthesized_expression "(bVar20)" ( identifier )) (compound_statement "{\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }" { (expression_statement "puVar12 = (uint *)((long)puVar11 + 6);" (assignment_expression "puVar12 = (uint *)((long)puVar11 + 6)" identifier = (cast_expression "(uint *)((long)puVar11 + 6)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar11 + 6)" ( (binary_expression "(long)puVar11 + 6" (cast_expression "(long)puVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) })) (expression_statement "iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);" (assignment_expression "iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6)" identifier = (binary_expression "iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6)" identifier + (parenthesized_expression "((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6)" ( (binary_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6" (parenthesized_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13))" ( (binary_expression "((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)" (parenthesized_expression "((int)puVar12 + -3)" ( (binary_expression "(int)puVar12 + -3" (cast_expression "(int)puVar12" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )) - (cast_expression "(uint)CARRY1((byte)uVar13,(byte)uVar13)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY1((byte)uVar13,(byte)uVar13)" identifier (argument_list "((byte)uVar13,(byte)uVar13)" ( (cast_expression "(byte)uVar13" ( (type_descriptor "byte" type_identifier) ) identifier) , (cast_expression "(byte)uVar13" ( (type_descriptor "byte" type_identifier) ) identifier) ))))) )) - identifier) )))) ;) (expression_statement "iVar3 = iVar14;" (assignment_expression "iVar3 = iVar14" identifier = identifier) ;) (if_statement "if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }" if (parenthesized_expression "(iVar14 <= iVar18 + -1)" ( (binary_expression "iVar14 <= iVar18 + -1" identifier <= (binary_expression "iVar18 + -1" identifier + number_literal)) )) (compound_statement "{\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }" { (do_statement "do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);" do (compound_statement "{\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              }" { (expression_statement "iVar14 = iVar14 + 1;" (assignment_expression "iVar14 = iVar14 + 1" identifier = (binary_expression "iVar14 + 1" identifier + number_literal)) ;) (expression_statement "putc(0x20,stdout);" (call_expression "putc(0x20,stdout)" identifier (argument_list "(0x20,stdout)" ( number_literal , identifier ))) ;) (expression_statement "iVar3 = iVar18;" (assignment_expression "iVar3 = iVar18" identifier = identifier) ;) }) while (parenthesized_expression "(iVar18 != iVar14)" ( (binary_expression "iVar18 != iVar14" identifier != identifier) )) ;) })) (expression_statement "printf(" %s ",local_58);" (call_expression "printf(" %s ",local_58)" identifier (argument_list "(" %s ",local_58)" ( (string_literal "" %s "" " string_content ") , identifier ))) ;) (expression_statement "uVar13 = *(uint *)(lVar2 + 0x130);" (assignment_expression "uVar13 = *(uint *)(lVar2 + 0x130)" identifier = (pointer_expression "*(uint *)(lVar2 + 0x130)" * (cast_expression "(uint *)(lVar2 + 0x130)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x130)" ( (binary_expression "lVar2 + 0x130" identifier + number_literal) ))))) ;) (expression_statement "pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);" (assignment_expression "pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5)" identifier = (cast_expression "(char *)dcgettext("gprof","<cycle %d>",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext("gprof","<cycle %d>",5)" identifier (argument_list "("gprof","<cycle %d>",5)" ( (string_literal ""gprof"" " string_content ") , (string_literal ""<cycle %d>"" " string_content ") , number_literal ))))) ;) (expression_statement "sprintf((char *)local_58,pcVar8,(ulong)uVar13);" (call_expression "sprintf((char *)local_58,pcVar8,(ulong)uVar13)" identifier (argument_list "((char *)local_58,pcVar8,(ulong)uVar13)" ( (cast_expression "(char *)local_58" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , identifier , (cast_expression "(ulong)uVar13" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (expression_statement "printf("%s",local_58);" (call_expression "printf("%s",local_58)" identifier (argument_list "("%s",local_58)" ( (string_literal ""%s"" " string_content ") , identifier ))) ;) (expression_statement "puVar12 = local_58;" (assignment_expression "puVar12 = local_58" identifier = identifier) ;) (do_statement "do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);" do (compound_statement "{\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            }" { (expression_statement "puVar11 = puVar12;" (assignment_expression "puVar11 = puVar12" identifier = identifier) ;) (expression_statement "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;" (assignment_expression "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11" identifier = (binary_expression "*puVar11 + 0xfefefeff & ~*puVar11" (binary_expression "*puVar11 + 0xfefefeff" (pointer_expression "*puVar11" * identifier) + number_literal) & (unary_expression "~*puVar11" ~ (pointer_expression "*puVar11" * identifier)))) ;) (expression_statement "uVar13 = uVar16 & 0x80808080;" (assignment_expression "uVar13 = uVar16 & 0x80808080" identifier = (binary_expression "uVar16 & 0x80808080" identifier & number_literal)) ;) (expression_statement "puVar12 = puVar11 + 1;" (assignment_expression "puVar12 = puVar11 + 1" identifier = (binary_expression "puVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar13 == 0)" ( (binary_expression "uVar13 == 0" identifier == number_literal) )) ;) (expression_statement "bVar20 = (uVar16 & 0x8080) == 0;" (assignment_expression "bVar20 = (uVar16 & 0x8080) == 0" identifier = (binary_expression "(uVar16 & 0x8080) == 0" (parenthesized_expression "(uVar16 & 0x8080)" ( (binary_expression "uVar16 & 0x8080" identifier & number_literal) )) == number_literal)) ;) (if_statement "if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }" if (parenthesized_expression "(bVar20)" ( identifier )) (compound_statement "{\n              uVar13 = uVar13 >> 0x10;\n            }" { (expression_statement "uVar13 = uVar13 >> 0x10;" (assignment_expression "uVar13 = uVar13 >> 0x10" identifier = (binary_expression "uVar13 >> 0x10" identifier >> number_literal)) ;) })) (if_statement "if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }" if (parenthesized_expression "(bVar20)" ( identifier )) (compound_statement "{\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }" { (expression_statement "puVar12 = (uint *)((long)puVar11 + 6);" (assignment_expression "puVar12 = (uint *)((long)puVar11 + 6)" identifier = (cast_expression "(uint *)((long)puVar11 + 6)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar11 + 6)" ( (binary_expression "(long)puVar11 + 6" (cast_expression "(long)puVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) })) (expression_statement "iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;" (assignment_expression "iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3" identifier = (binary_expression "((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3" (parenthesized_expression "((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6)" ( (binary_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6" (parenthesized_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13))" ( (binary_expression "((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)" (parenthesized_expression "((int)puVar12 + -3)" ( (binary_expression "(int)puVar12 + -3" (cast_expression "(int)puVar12" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )) - (cast_expression "(uint)CARRY1((byte)uVar13,(byte)uVar13)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY1((byte)uVar13,(byte)uVar13)" identifier (argument_list "((byte)uVar13,(byte)uVar13)" ( (cast_expression "(byte)uVar13" ( (type_descriptor "byte" type_identifier) ) identifier) , (cast_expression "(byte)uVar13" ( (type_descriptor "byte" type_identifier) ) identifier) ))))) )) - identifier) )) + identifier)) ;) }) (else_clause "else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }" else (compound_statement "{\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }" { (expression_statement "sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));" (call_expression "sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108))" identifier (argument_list "((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108))" ( (cast_expression "(char *)local_58" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , (string_literal ""[%d]"" " string_content ") , (binary_expression "(ulong)*(uint *)(lVar2 + 0x108)" (parenthesized_expression "(ulong)" ( identifier )) * (cast_expression "(uint *)(lVar2 + 0x108)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x108)" ( (binary_expression "lVar2 + 0x108" identifier + number_literal) )))) ))) ;) (if_statement "if (local_68 <= uVar19) goto LAB_00106fe6;" if (parenthesized_expression "(local_68 <= uVar19)" ( (binary_expression "local_68 <= uVar19" identifier <= identifier) )) (goto_statement "goto LAB_00106fe6;" goto statement_identifier ;)) (labeled_statement "LAB_00106f7e:\n            puVar12 = local_58;" statement_identifier : (expression_statement "puVar12 = local_58;" (assignment_expression "puVar12 = local_58" identifier = identifier) ;)) (if_statement "if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }" if (parenthesized_expression "(DAT_001195dc == 0)" ( (binary_expression "DAT_001195dc == 0" identifier == number_literal) )) (compound_statement "{\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }" { (do_statement "do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);" do (compound_statement "{\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              }" { (expression_statement "puVar11 = puVar12;" (assignment_expression "puVar11 = puVar12" identifier = identifier) ;) (expression_statement "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;" (assignment_expression "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11" identifier = (binary_expression "*puVar11 + 0xfefefeff & ~*puVar11" (binary_expression "*puVar11 + 0xfefefeff" (pointer_expression "*puVar11" * identifier) + number_literal) & (unary_expression "~*puVar11" ~ (pointer_expression "*puVar11" * identifier)))) ;) (expression_statement "uVar13 = uVar16 & 0x80808080;" (assignment_expression "uVar13 = uVar16 & 0x80808080" identifier = (binary_expression "uVar16 & 0x80808080" identifier & number_literal)) ;) (expression_statement "puVar12 = puVar11 + 1;" (assignment_expression "puVar12 = puVar11 + 1" identifier = (binary_expression "puVar11 + 1" identifier + number_literal)) ;) }) while (parenthesized_expression "(uVar13 == 0)" ( (binary_expression "uVar13 == 0" identifier == number_literal) )) ;) (expression_statement "bVar20 = (uVar16 & 0x8080) == 0;" (assignment_expression "bVar20 = (uVar16 & 0x8080) == 0" identifier = (binary_expression "(uVar16 & 0x8080) == 0" (parenthesized_expression "(uVar16 & 0x8080)" ( (binary_expression "uVar16 & 0x8080" identifier & number_literal) )) == number_literal)) ;) (if_statement "if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }" if (parenthesized_expression "(bVar20)" ( identifier )) (compound_statement "{\n                uVar13 = uVar13 >> 0x10;\n              }" { (expression_statement "uVar13 = uVar13 >> 0x10;" (assignment_expression "uVar13 = uVar13 >> 0x10" identifier = (binary_expression "uVar13 >> 0x10" identifier >> number_literal)) ;) })) (if_statement "if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }" if (parenthesized_expression "(bVar20)" ( identifier )) (compound_statement "{\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }" { (expression_statement "puVar12 = (uint *)((long)puVar11 + 6);" (assignment_expression "puVar12 = (uint *)((long)puVar11 + 6)" identifier = (cast_expression "(uint *)((long)puVar11 + 6)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "((long)puVar11 + 6)" ( (binary_expression "(long)puVar11 + 6" (cast_expression "(long)puVar11" ( (type_descriptor "long" (sized_type_specifier "long" long)) ) identifier) + number_literal) )))) ;) })) (expression_statement "iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);" (assignment_expression "iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6)" identifier = (binary_expression "iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6)" identifier + (parenthesized_expression "((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6)" ( (binary_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6" (parenthesized_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13))" ( (binary_expression "((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)" (parenthesized_expression "((int)puVar12 + -3)" ( (binary_expression "(int)puVar12 + -3" (cast_expression "(int)puVar12" ( (type_descriptor "int" primitive_type) ) identifier) + number_literal) )) - (cast_expression "(uint)CARRY1((byte)uVar13,(byte)uVar13)" ( (type_descriptor "uint" type_identifier) ) (call_expression "CARRY1((byte)uVar13,(byte)uVar13)" identifier (argument_list "((byte)uVar13,(byte)uVar13)" ( (cast_expression "(byte)uVar13" ( (type_descriptor "byte" type_identifier) ) identifier) , (cast_expression "(byte)uVar13" ( (type_descriptor "byte" type_identifier) ) identifier) ))))) )) - identifier) )))) ;) (if_statement "if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }" if (parenthesized_expression "(iVar14 <= iVar18 + -1)" ( (binary_expression "iVar14 <= iVar18 + -1" identifier <= (binary_expression "iVar18 + -1" identifier + number_literal)) )) (compound_statement "{\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }" { (do_statement "do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);" do (compound_statement "{\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                }" { (expression_statement "iVar14 = iVar14 + 1;" (assignment_expression "iVar14 = iVar14 + 1" identifier = (binary_expression "iVar14 + 1" identifier + number_literal)) ;) (expression_statement "putc(0x20,stdout);" (call_expression "putc(0x20,stdout)" identifier (argument_list "(0x20,stdout)" ( number_literal , identifier ))) ;) }) while (parenthesized_expression "(iVar14 != iVar18)" ( (binary_expression "iVar14 != iVar18" identifier != identifier) )) ;) })) (expression_statement "printf(" %s ",local_58);" (call_expression "printf(" %s ",local_58)" identifier (argument_list "(" %s ",local_58)" ( (string_literal "" %s "" " string_content ") , identifier ))) ;) (expression_statement "iVar6 = FUN_0010ce70(lVar2);" (assignment_expression "iVar6 = FUN_0010ce70(lVar2)" identifier = (call_expression "FUN_0010ce70(lVar2)" identifier (argument_list "(lVar2)" ( identifier )))) ;) (expression_statement "iVar14 = iVar14 + iVar6;" (assignment_expression "iVar14 = iVar14 + iVar6" identifier = (binary_expression "iVar14 + iVar6" identifier + identifier)) ;) (if_statement "if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }" if (parenthesized_expression "(((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0))" ( (binary_expression "((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)" (parenthesized_expression "((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0))" ( (binary_expression "(DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)" (parenthesized_expression "(DAT_001195d0 == 0)" ( (binary_expression "DAT_001195d0 == 0" identifier == number_literal) )) && (parenthesized_expression "((*(byte *)(lVar2 + 0x24) & 2) != 0)" ( (binary_expression "(*(byte *)(lVar2 + 0x24) & 2) != 0" (parenthesized_expression "(*(byte *)(lVar2 + 0x24) & 2)" ( (binary_expression "*(byte *)(lVar2 + 0x24) & 2" (pointer_expression "*(byte *)(lVar2 + 0x24)" * (cast_expression "(byte *)(lVar2 + 0x24)" ( (type_descriptor "byte *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x24)" ( (binary_expression "lVar2 + 0x24" identifier + number_literal) )))) & number_literal) )) != number_literal) ))) )) && (parenthesized_expression "(*(long *)(lVar2 + 0x18) != 0)" ( (binary_expression "*(long *)(lVar2 + 0x18) != 0" (pointer_expression "*(long *)(lVar2 + 0x18)" * (cast_expression "(long *)(lVar2 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x18)" ( (binary_expression "lVar2 + 0x18" identifier + number_literal) )))) != number_literal) ))) )) (compound_statement "{\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }" { (expression_statement "pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);" (assignment_expression "pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8)" identifier = (pointer_expression "*(char **)(*(long *)(lVar2 + 0x18) + 8)" * (cast_expression "(char **)(*(long *)(lVar2 + 0x18) + 8)" ( (type_descriptor "char **" primitive_type (abstract_pointer_declarator "**" * (abstract_pointer_declarator "*" *))) ) (parenthesized_expression "(*(long *)(lVar2 + 0x18) + 8)" ( (binary_expression "*(long *)(lVar2 + 0x18) + 8" (pointer_expression "*(long *)(lVar2 + 0x18)" * (cast_expression "(long *)(lVar2 + 0x18)" ( (type_descriptor "long *" (sized_type_specifier "long" long) (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x18)" ( (binary_expression "lVar2 + 0x18" identifier + number_literal) )))) + number_literal) ))))) ;) (if_statement "if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }" if (parenthesized_expression "(DAT_001195cc == 0)" ( (binary_expression "DAT_001195cc == 0" identifier == number_literal) )) (compound_statement "{\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }" { (expression_statement "pcVar9 = strrchr(pcVar8,0x2f);" (assignment_expression "pcVar9 = strrchr(pcVar8,0x2f)" identifier = (call_expression "strrchr(pcVar8,0x2f)" identifier (argument_list "(pcVar8,0x2f)" ( identifier , number_literal )))) ;) (if_statement "if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }" if (parenthesized_expression "(pcVar9 != (char *)0x0)" ( (binary_expression "pcVar9 != (char *)0x0" identifier != (cast_expression "(char *)0x0" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) number_literal)) )) (compound_statement "{\n                    pcVar8 = pcVar9 + 1;\n                  }" { (expression_statement "pcVar8 = pcVar9 + 1;" (assignment_expression "pcVar8 = pcVar9 + 1" identifier = (binary_expression "pcVar9 + 1" identifier + number_literal)) ;) })) })) (expression_statement "printf(" (%s)",pcVar8);" (call_expression "printf(" (%s)",pcVar8)" identifier (argument_list "(" (%s)",pcVar8)" ( (string_literal "" (%s)"" " string_content ") , identifier ))) ;) (expression_statement "sVar10 = strlen(pcVar8);" (assignment_expression "sVar10 = strlen(pcVar8)" identifier = (call_expression "strlen(pcVar8)" identifier (argument_list "(pcVar8)" ( identifier )))) ;) (expression_statement "iVar14 = iVar14 + 3 + (int)sVar10;" (assignment_expression "iVar14 = iVar14 + 3 + (int)sVar10" identifier = (binary_expression "iVar14 + 3 + (int)sVar10" (binary_expression "iVar14 + 3" identifier + number_literal) + (cast_expression "(int)sVar10" ( (type_descriptor "int" primitive_type) ) identifier))) ;) })) }) (else_clause "else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }" else (compound_statement "{\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }" { (expression_statement "printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));" (call_expression "printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10))" identifier (argument_list "("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10))" ( (string_literal ""%6.6s %-19.19s"" " string_content ") , identifier , (pointer_expression "*(undefined8 *)(lVar2 + 0x10)" * (cast_expression "(undefined8 *)(lVar2 + 0x10)" ( (type_descriptor "undefined8 *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x10)" ( (binary_expression "lVar2 + 0x10" identifier + number_literal) )))) ))) ;) }))) }))) (expression_statement "uVar19 = uVar19 + uVar1;" (assignment_expression "uVar19 = uVar19 + uVar1" identifier = (binary_expression "uVar19 + uVar1" identifier + identifier)) ;) (expression_statement "iVar18 = iVar18 + iVar4;" (assignment_expression "iVar18 = iVar18 + iVar4" identifier = (binary_expression "iVar18 + iVar4" identifier + identifier)) ;) (if_statement "if (local_70 <= uVar19) break;" if (parenthesized_expression "(local_70 <= uVar19)" ( (binary_expression "local_70 <= uVar19" identifier <= identifier) )) (break_statement "break;" break ;)) }) while (parenthesized_expression "( true )" ( true )) ;) }))) (expression_statement "putchar(10);" (call_expression "putchar(10)" identifier (argument_list "(10)" ( number_literal ))) ;) (expression_statement "local_60 = local_60 + 1;" (assignment_expression "local_60 = local_60 + 1" identifier = (binary_expression "local_60 + 1" identifier + number_literal)) ;) (if_statement "if (uVar1 <= local_60) break;" if (parenthesized_expression "(uVar1 <= local_60)" ( (binary_expression "uVar1 <= local_60" identifier <= identifier) )) (break_statement "break;" break ;)) }) while (parenthesized_expression "( true )" ( true )) ;) })) (labeled_statement "LAB_00107070:\n  free(__base);" statement_identifier : (expression_statement "free(__base);" (call_expression "free(__base)" identifier (argument_list "(__base)" ( identifier ))) ;)) (return_statement "return;" return ;) (labeled_statement "code_r0x00106fee:\n  printf("%6.6s ",local_58);" statement_identifier : (expression_statement "printf("%6.6s ",local_58);" (call_expression "printf("%6.6s ",local_58)" identifier (argument_list "("%6.6s ",local_58)" ( (string_literal ""%6.6s "" " string_content ") , identifier ))) ;)) (expression_statement "uVar13 = *(uint *)(lVar2 + 0x130);" (assignment_expression "uVar13 = *(uint *)(lVar2 + 0x130)" identifier = (pointer_expression "*(uint *)(lVar2 + 0x130)" * (cast_expression "(uint *)(lVar2 + 0x130)" ( (type_descriptor "uint *" type_identifier (abstract_pointer_declarator "*" *)) ) (parenthesized_expression "(lVar2 + 0x130)" ( (binary_expression "lVar2 + 0x130" identifier + number_literal) ))))) ;) (expression_statement "pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);" (assignment_expression "pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5)" identifier = (cast_expression "(char *)dcgettext("gprof","<cycle %d>",5)" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) (call_expression "dcgettext("gprof","<cycle %d>",5)" identifier (argument_list "("gprof","<cycle %d>",5)" ( (string_literal ""gprof"" " string_content ") , (string_literal ""<cycle %d>"" " string_content ") , number_literal ))))) ;) (expression_statement "sprintf((char *)local_58,pcVar8,(ulong)uVar13);" (call_expression "sprintf((char *)local_58,pcVar8,(ulong)uVar13)" identifier (argument_list "((char *)local_58,pcVar8,(ulong)uVar13)" ( (cast_expression "(char *)local_58" ( (type_descriptor "char *" primitive_type (abstract_pointer_declarator "*" *)) ) identifier) , identifier , (cast_expression "(ulong)uVar13" ( (type_descriptor "ulong" type_identifier) ) identifier) ))) ;) (expression_statement "printf("%-19.19s",local_58);" (call_expression "printf("%-19.19s",local_58)" identifier (argument_list "("%-19.19s",local_58)" ( (string_literal ""%-19.19s"" " string_content ") , identifier ))) ;) (expression_statement "uVar19 = uVar19 + uVar1;" (assignment_expression "uVar19 = uVar19 + uVar1" identifier = (binary_expression "uVar19 + uVar1" identifier + identifier)) ;) (expression_statement "iVar18 = iVar18 + iVar4;" (assignment_expression "iVar18 = iVar18 + iVar4" identifier = (binary_expression "iVar18 + iVar4" identifier + identifier)) ;) (goto_statement "goto joined_r0x00106f52;" goto statement_identifier ;) })))
(translation_unit (function_definition TYPE (function_declarator IDENT (parameter_list ( (parameter_declaration TYPE) ))) (compound_statement { (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE (pointer_declarator * IDENT) ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration (sized_type_specifier long) IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE IDENT ;) (declaration TYPE (array_declarator IDENT [ LIT ]) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT + LIT) )) / LIT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (binary_expression (call_expression (parenthesized_expression ( IDENT )) (argument_list ( (binary_expression IDENT + IDENT) ))) << LIT) ))))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( IDENT , LIT , LIT , IDENT ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " escape_sequence ") ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content escape_sequence escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (goto_statement goto statement_identifier ;) })) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) )))) = (binary_expression (binary_expression IDENT * LIT) + IDENT)) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) ;) }) (else_clause else (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT - LIT)) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (while_statement while (parenthesized_expression ( BOOL )) (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) ))) )) || (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) ))) )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + (binary_expression IDENT * LIT)) )))) = IDENT) ;) })) (if_statement if (parenthesized_expression ( (binary_expression (binary_expression (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT) + IDENT) == IDENT) )) (break_statement break ;)) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) })) (expression_statement (call_expression IDENT (argument_list ( IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) , LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) }))) (expression_statement (call_expression IDENT (argument_list ( (string_literal " escape_sequence ") ))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content escape_sequence escape_sequence ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT + LIT) )) / LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression LIT < (binary_expression IDENT + LIT)) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = LIT) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (labeled_statement statement_identifier : (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) * LIT)) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE) ) IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) == LIT) )) (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") , (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT < IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT != LIT) )) (goto_statement goto statement_identifier ;)) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (pointer_expression * IDENT) + LIT) & (unary_expression ~ (pointer_expression * IDENT)))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT == LIT) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;) })) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )) - (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) IDENT) , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))))) )) - IDENT) )))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (binary_expression IDENT + LIT)) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) (expression_statement (assignment_expression IDENT = IDENT) ;) (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (pointer_expression * IDENT) + LIT) & (unary_expression ~ (pointer_expression * IDENT)))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT == LIT) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;) })) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )) - (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) IDENT) , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))))) )) - IDENT) )) + IDENT)) ;) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , (string_literal " string_content ") , (binary_expression (parenthesized_expression ( IDENT )) * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (goto_statement goto statement_identifier ;)) (labeled_statement statement_identifier : (expression_statement (assignment_expression IDENT = IDENT) ;)) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = IDENT) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression (pointer_expression * IDENT) + LIT) & (unary_expression ~ (pointer_expression * IDENT)))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT & LIT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) }) while (parenthesized_expression ( (binary_expression IDENT == LIT) )) ;) (expression_statement (assignment_expression IDENT = (binary_expression (parenthesized_expression ( (binary_expression IDENT & LIT) )) == LIT)) ;) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT >> LIT)) ;) })) (if_statement if (parenthesized_expression ( IDENT )) (compound_statement { (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor (sized_type_specifier long)) ) IDENT) + LIT) )))) ;) })) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (cast_expression ( (type_descriptor TYPE) ) IDENT) + LIT) )) - (cast_expression ( (type_descriptor TYPE) ) (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE) ) IDENT) , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))))) )) - IDENT) )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= (binary_expression IDENT + LIT)) )) (compound_statement { (do_statement do (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (expression_statement (call_expression IDENT (argument_list ( LIT , IDENT ))) ;) }) while (parenthesized_expression ( (binary_expression IDENT != IDENT) )) ;) })) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression (parenthesized_expression ( (binary_expression IDENT == LIT) )) && (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) ))) )) && (parenthesized_expression ( (binary_expression (pointer_expression * (cast_expression ( (type_descriptor (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) != LIT) ))) )) (compound_statement { (expression_statement (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 (sized_type_specifier long) (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) + LIT) ))))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT == LIT) )) (compound_statement { (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT , LIT )))) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT != (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) LIT)) )) (compound_statement { (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) })) })) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (call_expression IDENT (argument_list ( IDENT )))) ;) (expression_statement (assignment_expression IDENT = (binary_expression (binary_expression IDENT + LIT) + (cast_expression ( (type_descriptor TYPE) ) IDENT))) ;) })) }) (else_clause else (compound_statement { (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT , (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) )))) ))) ;) }))) }))) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (break_statement break ;)) }) while (parenthesized_expression ( BOOL )) ;) }))) (expression_statement (call_expression IDENT (argument_list ( LIT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + LIT)) ;) (if_statement if (parenthesized_expression ( (binary_expression IDENT <= IDENT) )) (break_statement break ;)) }) while (parenthesized_expression ( BOOL )) ;) })) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( IDENT ))) ;)) (return_statement return ;) (labeled_statement statement_identifier : (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;)) (expression_statement (assignment_expression IDENT = (pointer_expression * (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (parenthesized_expression ( (binary_expression IDENT + LIT) ))))) ;) (expression_statement (assignment_expression IDENT = (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) (call_expression IDENT (argument_list ( (string_literal " string_content ") , (string_literal " string_content ") , LIT ))))) ;) (expression_statement (call_expression IDENT (argument_list ( (cast_expression ( (type_descriptor TYPE (abstract_pointer_declarator *)) ) IDENT) , IDENT , (cast_expression ( (type_descriptor TYPE) ) IDENT) ))) ;) (expression_statement (call_expression IDENT (argument_list ( (string_literal " string_content ") , IDENT ))) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (expression_statement (assignment_expression IDENT = (binary_expression IDENT + IDENT)) ;) (goto_statement goto statement_identifier ;) })))
(function_definition "void FUN_00106dd0(void)\n\n{\n  uint uVar1;\n  long lVar2;\n  int iVar3;\n  int iVar4;\n  long lVar5;\n  int iVar6;\n  void *__base;\n  long lVar7;\n  char *pcVar8;\n  char *pcVar9;\n  size_t sVar10;\n  uint *puVar11;\n  uint *puVar12;\n  uint uVar13;\n  int iVar14;\n  ulong uVar15;\n  uint uVar16;\n  long lVar17;\n  int iVar18;\n  uint uVar19;\n  bool bVar20;\n  uint local_70;\n  uint local_68;\n  uint local_60;\n  uint local_58 [10];\n  \n  iVar4 = (DAT_001182e8 + -1) / 3;\n  __base = (void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3);\n  iVar18 = DAT_001182e0;\n  local_68 = DAT_00119b30;\n  if (DAT_00119b30 == 0) {\n    qsort(__base,0,8,FUN_00106300);\n    if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = DAT_00119ad0;\n    lVar2 = DAT_00119ac0;\n    uVar15 = 1;\n    uVar19 = local_68;\n    do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);\n  }\n  else {\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }\n  puts("\f");\n  pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n  printf(pcVar8);\n  local_60 = 0;\n  uVar1 = (local_70 + 2) / 3;\n  if (2 < local_70 + 2) {\n    do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }\nLAB_00107070:\n  free(__base);\n  return;\ncode_r0x00106fee:\n  printf("%6.6s ",local_58);\n  uVar13 = *(uint *)(lVar2 + 0x130);\n  pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n  sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n  printf("%-19.19s",local_58);\n  uVar19 = uVar19 + uVar1;\n  iVar18 = iVar18 + iVar4;\n  goto joined_r0x00106f52;\n}" (primitive_type "void") (function_declarator "FUN_00106dd0(void)" (identifier "FUN_00106dd0") (parameter_list "(void)" (( "(") (parameter_declaration "void" (primitive_type "void")) () ")"))) (compound_statement "{\n  uint uVar1;\n  long lVar2;\n  int iVar3;\n  int iVar4;\n  long lVar5;\n  int iVar6;\n  void *__base;\n  long lVar7;\n  char *pcVar8;\n  char *pcVar9;\n  size_t sVar10;\n  uint *puVar11;\n  uint *puVar12;\n  uint uVar13;\n  int iVar14;\n  ulong uVar15;\n  uint uVar16;\n  long lVar17;\n  int iVar18;\n  uint uVar19;\n  bool bVar20;\n  uint local_70;\n  uint local_68;\n  uint local_60;\n  uint local_58 [10];\n  \n  iVar4 = (DAT_001182e8 + -1) / 3;\n  __base = (void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3);\n  iVar18 = DAT_001182e0;\n  local_68 = DAT_00119b30;\n  if (DAT_00119b30 == 0) {\n    qsort(__base,0,8,FUN_00106300);\n    if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = DAT_00119ad0;\n    lVar2 = DAT_00119ac0;\n    uVar15 = 1;\n    uVar19 = local_68;\n    do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);\n  }\n  else {\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }\n  puts("\f");\n  pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n  printf(pcVar8);\n  local_60 = 0;\n  uVar1 = (local_70 + 2) / 3;\n  if (2 < local_70 + 2) {\n    do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }\nLAB_00107070:\n  free(__base);\n  return;\ncode_r0x00106fee:\n  printf("%6.6s ",local_58);\n  uVar13 = *(uint *)(lVar2 + 0x130);\n  pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n  sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n  printf("%-19.19s",local_58);\n  uVar19 = uVar19 + uVar1;\n  iVar18 = iVar18 + iVar4;\n  goto joined_r0x00106f52;\n}" ({ "{") (declaration "uint uVar1;" (type_identifier "uint") (identifier "uVar1") (; ";")) (declaration "long lVar2;" (sized_type_specifier "long" (long "long")) (identifier "lVar2") (; ";")) (declaration "int iVar3;" (primitive_type "int") (identifier "iVar3") (; ";")) (declaration "int iVar4;" (primitive_type "int") (identifier "iVar4") (; ";")) (declaration "long lVar5;" (sized_type_specifier "long" (long "long")) (identifier "lVar5") (; ";")) (declaration "int iVar6;" (primitive_type "int") (identifier "iVar6") (; ";")) (declaration "void *__base;" (primitive_type "void") (pointer_declarator "*__base" (* "*") (identifier "__base")) (; ";")) (declaration "long lVar7;" (sized_type_specifier "long" (long "long")) (identifier "lVar7") (; ";")) (declaration "char *pcVar8;" (primitive_type "char") (pointer_declarator "*pcVar8" (* "*") (identifier "pcVar8")) (; ";")) (declaration "char *pcVar9;" (primitive_type "char") (pointer_declarator "*pcVar9" (* "*") (identifier "pcVar9")) (; ";")) (declaration "size_t sVar10;" (primitive_type "size_t") (identifier "sVar10") (; ";")) (declaration "uint *puVar11;" (type_identifier "uint") (pointer_declarator "*puVar11" (* "*") (identifier "puVar11")) (; ";")) (declaration "uint *puVar12;" (type_identifier "uint") (pointer_declarator "*puVar12" (* "*") (identifier "puVar12")) (; ";")) (declaration "uint uVar13;" (type_identifier "uint") (identifier "uVar13") (; ";")) (declaration "int iVar14;" (primitive_type "int") (identifier "iVar14") (; ";")) (declaration "ulong uVar15;" (type_identifier "ulong") (identifier "uVar15") (; ";")) (declaration "uint uVar16;" (type_identifier "uint") (identifier "uVar16") (; ";")) (declaration "long lVar17;" (sized_type_specifier "long" (long "long")) (identifier "lVar17") (; ";")) (declaration "int iVar18;" (primitive_type "int") (identifier "iVar18") (; ";")) (declaration "uint uVar19;" (type_identifier "uint") (identifier "uVar19") (; ";")) (declaration "bool bVar20;" (primitive_type "bool") (identifier "bVar20") (; ";")) (declaration "uint local_70;" (type_identifier "uint") (identifier "local_70") (; ";")) (declaration "uint local_68;" (type_identifier "uint") (identifier "local_68") (; ";")) (declaration "uint local_60;" (type_identifier "uint") (identifier "local_60") (; ";")) (declaration "uint local_58 [10];" (type_identifier "uint") (array_declarator "local_58 [10]" (identifier "local_58") ([ "[") (number_literal "10") (] "]")) (; ";")) (expression_statement "iVar4 = (DAT_001182e8 + -1) / 3;" (assignment_expression "iVar4 = (DAT_001182e8 + -1) / 3" (identifier "iVar4") (= "=") (binary_expression "(DAT_001182e8 + -1) / 3" (parenthesized_expression "(DAT_001182e8 + -1)" (( "(") (binary_expression "DAT_001182e8 + -1" (identifier "DAT_001182e8") (+ "+") (number_literal "-1")) () ")")) (/ "/") (number_literal "3"))) (; ";")) (expression_statement "__base = (void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3);" (assignment_expression "__base = (void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3)" (identifier "__base") (= "=") (cast_expression "(void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3)" (( "(") (type_descriptor "void *" (primitive_type "void") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3)" (identifier "xmalloc") (argument_list "((ulong)(DAT_00119ad0 + DAT_00119b30) << 3)" (( "(") (binary_expression "(ulong)(DAT_00119ad0 + DAT_00119b30) << 3" (call_expression "(ulong)(DAT_00119ad0 + DAT_00119b30)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (argument_list "(DAT_00119ad0 + DAT_00119b30)" (( "(") (binary_expression "DAT_00119ad0 + DAT_00119b30" (identifier "DAT_00119ad0") (+ "+") (identifier "DAT_00119b30")) () ")"))) (<< "<<") (number_literal "3")) () ")"))))) (; ";")) (expression_statement "iVar18 = DAT_001182e0;" (assignment_expression "iVar18 = DAT_001182e0" (identifier "iVar18") (= "=") (identifier "DAT_001182e0")) (; ";")) (expression_statement "local_68 = DAT_00119b30;" (assignment_expression "local_68 = DAT_00119b30" (identifier "local_68") (= "=") (identifier "DAT_00119b30")) (; ";")) (if_statement "if (DAT_00119b30 == 0) {\n    qsort(__base,0,8,FUN_00106300);\n    if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = DAT_00119ad0;\n    lVar2 = DAT_00119ac0;\n    uVar15 = 1;\n    uVar19 = local_68;\n    do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);\n  }\n  else {\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }" (if "if") (parenthesized_expression "(DAT_00119b30 == 0)" (( "(") (binary_expression "DAT_00119b30 == 0" (identifier "DAT_00119b30") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n    qsort(__base,0,8,FUN_00106300);\n    if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }\nLAB_00106eaa:\n    uVar1 = DAT_00119ad0;\n    lVar2 = DAT_00119ac0;\n    uVar15 = 1;\n    uVar19 = local_68;\n    do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);\n  }" ({ "{") (expression_statement "qsort(__base,0,8,FUN_00106300);" (call_expression "qsort(__base,0,8,FUN_00106300)" (identifier "qsort") (argument_list "(__base,0,8,FUN_00106300)" (( "(") (identifier "__base") (, ",") (number_literal "0") (, ",") (number_literal "8") (, ",") (identifier "FUN_00106300") () ")"))) (; ";")) (if_statement "if (DAT_00119ad0 == 0) {\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }" (if "if") (parenthesized_expression "(DAT_00119ad0 == 0)" (( "(") (binary_expression "DAT_00119ad0 == 0" (identifier "DAT_00119ad0") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n      puts("\f");\n      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);\n      printf(pcVar8);\n      goto LAB_00107070;\n    }" ({ "{") (expression_statement "puts("\f");" (call_expression "puts("\f")" (identifier "puts") (argument_list "("\f")" (( "(") (string_literal ""\f"" (" """) (escape_sequence "\f") (" """)) () ")"))) (; ";")) (expression_statement "pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5)" (identifier "pcVar8") (= "=") (cast_expression "(char *)dcgettext("gprof","Index by function name\n\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext("gprof","Index by function name\n\n",5)" (identifier "dcgettext") (argument_list "("gprof","Index by function name\n\n",5)" (( "(") (string_literal ""gprof"" (" """) (string_content "gprof") (" """)) (, ",") (string_literal ""Index by function name\n\n"" (" """) (string_content "Index by function name") (escape_sequence "\n") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar8);" (call_expression "printf(pcVar8)" (identifier "printf") (argument_list "(pcVar8)" (( "(") (identifier "pcVar8") () ")"))) (; ";")) (goto_statement "goto LAB_00107070;" (goto "goto") (statement_identifier "LAB_00107070") (; ";")) (} "}"))) (labeled_statement "LAB_00106eaa:\n    uVar1 = DAT_00119ad0;" (statement_identifier "LAB_00106eaa") (: ":") (expression_statement "uVar1 = DAT_00119ad0;" (assignment_expression "uVar1 = DAT_00119ad0" (identifier "uVar1") (= "=") (identifier "DAT_00119ad0")) (; ";"))) (expression_statement "lVar2 = DAT_00119ac0;" (assignment_expression "lVar2 = DAT_00119ac0" (identifier "lVar2") (= "=") (identifier "DAT_00119ac0")) (; ";")) (expression_statement "uVar15 = 1;" (assignment_expression "uVar15 = 1" (identifier "uVar15") (= "=") (number_literal "1")) (; ";")) (expression_statement "uVar19 = local_68;" (assignment_expression "uVar19 = local_68" (identifier "uVar19") (= "=") (identifier "local_68")) (; ";")) (do_statement "do {\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    } while (uVar13 <= uVar1);" (do "do") (compound_statement "{\n      local_70 = uVar19 + 1;\n      uVar13 = (int)uVar15 + 1;\n      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;\n      uVar15 = (ulong)uVar13;\n      uVar19 = local_70;\n    }" ({ "{") (expression_statement "local_70 = uVar19 + 1;" (assignment_expression "local_70 = uVar19 + 1" (identifier "local_70") (= "=") (binary_expression "uVar19 + 1" (identifier "uVar19") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "uVar13 = (int)uVar15 + 1;" (assignment_expression "uVar13 = (int)uVar15 + 1" (identifier "uVar13") (= "=") (binary_expression "(int)uVar15 + 1" (cast_expression "(int)uVar15" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "uVar15")) (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;" (assignment_expression "*(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2" (pointer_expression "*(ulong *)((long)__base + (ulong)uVar19 * 8)" (* "*") (cast_expression "(ulong *)((long)__base + (ulong)uVar19 * 8)" (( "(") (type_descriptor "ulong *" (type_identifier "ulong") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)__base + (ulong)uVar19 * 8)" (( "(") (binary_expression "(long)__base + (ulong)uVar19 * 8" (cast_expression "(long)__base" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "__base")) (+ "+") (binary_expression "(ulong)uVar19 * 8" (cast_expression "(ulong)uVar19" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar19")) (* "*") (number_literal "8"))) () ")")))) (= "=") (binary_expression "uVar15 * 0x158 + lVar2" (binary_expression "uVar15 * 0x158" (identifier "uVar15") (* "*") (number_literal "0x158")) (+ "+") (identifier "lVar2"))) (; ";")) (expression_statement "uVar15 = (ulong)uVar13;" (assignment_expression "uVar15 = (ulong)uVar13" (identifier "uVar15") (= "=") (cast_expression "(ulong)uVar13" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar13"))) (; ";")) (expression_statement "uVar19 = local_70;" (assignment_expression "uVar19 = local_70" (identifier "uVar19") (= "=") (identifier "local_70")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(uVar13 <= uVar1)" (( "(") (binary_expression "uVar13 <= uVar1" (identifier "uVar13") (<= "<=") (identifier "uVar1")) () ")")) (; ";")) (} "}")) (else_clause "else {\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }" (else "else") (compound_statement "{\n    uVar1 = DAT_00119b30 - 1;\n    local_70 = 0;\n    lVar2 = DAT_00119b38 + 0x158;\n    lVar5 = lVar2;\n    lVar17 = DAT_00119b38;\n    while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }\n    qsort(__base,(ulong)local_70,8,FUN_00106300);\n    local_68 = local_70;\n    if (DAT_00119ad0 != 0) goto LAB_00106eaa;\n  }" ({ "{") (expression_statement "uVar1 = DAT_00119b30 - 1;" (assignment_expression "uVar1 = DAT_00119b30 - 1" (identifier "uVar1") (= "=") (binary_expression "DAT_00119b30 - 1" (identifier "DAT_00119b30") (- "-") (number_literal "1"))) (; ";")) (expression_statement "local_70 = 0;" (assignment_expression "local_70 = 0" (identifier "local_70") (= "=") (number_literal "0")) (; ";")) (expression_statement "lVar2 = DAT_00119b38 + 0x158;" (assignment_expression "lVar2 = DAT_00119b38 + 0x158" (identifier "lVar2") (= "=") (binary_expression "DAT_00119b38 + 0x158" (identifier "DAT_00119b38") (+ "+") (number_literal "0x158"))) (; ";")) (expression_statement "lVar5 = lVar2;" (assignment_expression "lVar5 = lVar2" (identifier "lVar5") (= "=") (identifier "lVar2")) (; ";")) (expression_statement "lVar17 = DAT_00119b38;" (assignment_expression "lVar17 = DAT_00119b38" (identifier "lVar17") (= "=") (identifier "DAT_00119b38")) (; ";")) (while_statement "while( true ) {\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }" (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (compound_statement "{\n      lVar7 = lVar5;\n      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }\n      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;\n      lVar5 = lVar7 + 0x158;\n      lVar17 = lVar7;\n    }" ({ "{") (expression_statement "lVar7 = lVar5;" (assignment_expression "lVar7 = lVar5" (identifier "lVar7") (= "=") (identifier "lVar5")) (; ";")) (if_statement "if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))\n      {\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }" (if "if") (parenthesized_expression "(((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))" (( "(") (binary_expression "((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0)" (parenthesized_expression "((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0))" (( "(") (binary_expression "(iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)" (parenthesized_expression "(iVar18 == 0)" (( "(") (binary_expression "iVar18 == 0" (identifier "iVar18") (== "==") (number_literal "0")) () ")")) (|| "||") (parenthesized_expression "(*(long *)(lVar17 + 0x28) != 0)" (( "(") (binary_expression "*(long *)(lVar17 + 0x28) != 0" (pointer_expression "*(long *)(lVar17 + 0x28)" (* "*") (cast_expression "(long *)(lVar17 + 0x28)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar17 + 0x28)" (( "(") (binary_expression "lVar17 + 0x28" (identifier "lVar17") (+ "+") (number_literal "0x28")) () ")")))) (!= "!=") (number_literal "0")) () ")"))) () ")")) (|| "||") (parenthesized_expression "(*(double *)(lVar17 + 0xe8) != 0.0)" (( "(") (binary_expression "*(double *)(lVar17 + 0xe8) != 0.0" (pointer_expression "*(double *)(lVar17 + 0xe8)" (* "*") (cast_expression "(double *)(lVar17 + 0xe8)" (( "(") (type_descriptor "double *" (primitive_type "double") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar17 + 0xe8)" (( "(") (binary_expression "lVar17 + 0xe8" (identifier "lVar17") (+ "+") (number_literal "0xe8")) () ")")))) (!= "!=") (number_literal "0.0")) () ")"))) () ")")) (compound_statement "{\n        uVar15 = (ulong)local_70;\n        local_70 = local_70 + 1;\n        *(long *)((long)__base + uVar15 * 8) = lVar17;\n      }" ({ "{") (expression_statement "uVar15 = (ulong)local_70;" (assignment_expression "uVar15 = (ulong)local_70" (identifier "uVar15") (= "=") (cast_expression "(ulong)local_70" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "local_70"))) (; ";")) (expression_statement "local_70 = local_70 + 1;" (assignment_expression "local_70 = local_70 + 1" (identifier "local_70") (= "=") (binary_expression "local_70 + 1" (identifier "local_70") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "*(long *)((long)__base + uVar15 * 8) = lVar17;" (assignment_expression "*(long *)((long)__base + uVar15 * 8) = lVar17" (pointer_expression "*(long *)((long)__base + uVar15 * 8)" (* "*") (cast_expression "(long *)((long)__base + uVar15 * 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)__base + uVar15 * 8)" (( "(") (binary_expression "(long)__base + uVar15 * 8" (cast_expression "(long)__base" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "__base")) (+ "+") (binary_expression "uVar15 * 8" (identifier "uVar15") (* "*") (number_literal "8"))) () ")")))) (= "=") (identifier "lVar17")) (; ";")) (} "}"))) (if_statement "if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;" (if "if") (parenthesized_expression "((ulong)uVar1 * 0x158 + lVar2 == lVar7)" (( "(") (binary_expression "(ulong)uVar1 * 0x158 + lVar2 == lVar7" (binary_expression "(ulong)uVar1 * 0x158 + lVar2" (binary_expression "(ulong)uVar1 * 0x158" (cast_expression "(ulong)uVar1" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar1")) (* "*") (number_literal "0x158")) (+ "+") (identifier "lVar2")) (== "==") (identifier "lVar7")) () ")")) (break_statement "break;" (break "break") (; ";"))) (expression_statement "lVar5 = lVar7 + 0x158;" (assignment_expression "lVar5 = lVar7 + 0x158" (identifier "lVar5") (= "=") (binary_expression "lVar7 + 0x158" (identifier "lVar7") (+ "+") (number_literal "0x158"))) (; ";")) (expression_statement "lVar17 = lVar7;" (assignment_expression "lVar17 = lVar7" (identifier "lVar17") (= "=") (identifier "lVar7")) (; ";")) (} "}"))) (expression_statement "qsort(__base,(ulong)local_70,8,FUN_00106300);" (call_expression "qsort(__base,(ulong)local_70,8,FUN_00106300)" (identifier "qsort") (argument_list "(__base,(ulong)local_70,8,FUN_00106300)" (( "(") (identifier "__base") (, ",") (cast_expression "(ulong)local_70" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "local_70")) (, ",") (number_literal "8") (, ",") (identifier "FUN_00106300") () ")"))) (; ";")) (expression_statement "local_68 = local_70;" (assignment_expression "local_68 = local_70" (identifier "local_68") (= "=") (identifier "local_70")) (; ";")) (if_statement "if (DAT_00119ad0 != 0) goto LAB_00106eaa;" (if "if") (parenthesized_expression "(DAT_00119ad0 != 0)" (( "(") (binary_expression "DAT_00119ad0 != 0" (identifier "DAT_00119ad0") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto LAB_00106eaa;" (goto "goto") (statement_identifier "LAB_00106eaa") (; ";"))) (} "}")))) (expression_statement "puts("\f");" (call_expression "puts("\f")" (identifier "puts") (argument_list "("\f")" (( "(") (string_literal ""\f"" (" """) (escape_sequence "\f") (" """)) () ")"))) (; ";")) (expression_statement "pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);" (assignment_expression "pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5)" (identifier "pcVar8") (= "=") (cast_expression "(char *)dcgettext("gprof","Index by function name\n\n",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext("gprof","Index by function name\n\n",5)" (identifier "dcgettext") (argument_list "("gprof","Index by function name\n\n",5)" (( "(") (string_literal ""gprof"" (" """) (string_content "gprof") (" """)) (, ",") (string_literal ""Index by function name\n\n"" (" """) (string_content "Index by function name") (escape_sequence "\n") (escape_sequence "\n") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "printf(pcVar8);" (call_expression "printf(pcVar8)" (identifier "printf") (argument_list "(pcVar8)" (( "(") (identifier "pcVar8") () ")"))) (; ";")) (expression_statement "local_60 = 0;" (assignment_expression "local_60 = 0" (identifier "local_60") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar1 = (local_70 + 2) / 3;" (assignment_expression "uVar1 = (local_70 + 2) / 3" (identifier "uVar1") (= "=") (binary_expression "(local_70 + 2) / 3" (parenthesized_expression "(local_70 + 2)" (( "(") (binary_expression "local_70 + 2" (identifier "local_70") (+ "+") (number_literal "2")) () ")")) (/ "/") (number_literal "3"))) (; ";")) (if_statement "if (2 < local_70 + 2) {\n    do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }" (if "if") (parenthesized_expression "(2 < local_70 + 2)" (( "(") (binary_expression "2 < local_70 + 2" (number_literal "2") (< "<") (binary_expression "local_70 + 2" (identifier "local_70") (+ "+") (number_literal "2"))) () ")")) (compound_statement "{\n    do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );\n  }" ({ "{") (do_statement "do {\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    } while( true );" (do "do") (compound_statement "{\n      iVar18 = 5;\n      iVar14 = 0;\n      uVar19 = local_60;\njoined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }\n      putchar(10);\n      local_60 = local_60 + 1;\n      if (uVar1 <= local_60) break;\n    }" ({ "{") (expression_statement "iVar18 = 5;" (assignment_expression "iVar18 = 5" (identifier "iVar18") (= "=") (number_literal "5")) (; ";")) (expression_statement "iVar14 = 0;" (assignment_expression "iVar14 = 0" (identifier "iVar14") (= "=") (number_literal "0")) (; ";")) (expression_statement "uVar19 = local_60;" (assignment_expression "uVar19 = local_60" (identifier "uVar19") (= "=") (identifier "local_60")) (; ";")) (labeled_statement "joined_r0x00106f52:\n      if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }" (statement_identifier "joined_r0x00106f52") (: ":") (if_statement "if (uVar19 < local_70) {\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }" (if "if") (parenthesized_expression "(uVar19 < local_70)" (( "(") (binary_expression "uVar19 < local_70" (identifier "uVar19") (< "<") (identifier "local_70")) () ")")) (compound_statement "{\n        do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );\n      }" ({ "{") (do_statement "do {\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        } while( true );" (do "do") (compound_statement "{\n          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);\n          iVar6 = (int)local_58;\n          if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }\n          uVar19 = uVar19 + uVar1;\n          iVar18 = iVar18 + iVar4;\n          if (local_70 <= uVar19) break;\n        }" ({ "{") (expression_statement "lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);" (assignment_expression "lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8)" (identifier "lVar2") (= "=") (pointer_expression "*(long *)((long)__base + (ulong)uVar19 * 8)" (* "*") (cast_expression "(long *)((long)__base + (ulong)uVar19 * 8)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)__base + (ulong)uVar19 * 8)" (( "(") (binary_expression "(long)__base + (ulong)uVar19 * 8" (cast_expression "(long)__base" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "__base")) (+ "+") (binary_expression "(ulong)uVar19 * 8" (cast_expression "(ulong)uVar19" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar19")) (* "*") (number_literal "8"))) () ")"))))) (; ";")) (expression_statement "iVar6 = (int)local_58;" (assignment_expression "iVar6 = (int)local_58" (identifier "iVar6") (= "=") (cast_expression "(int)local_58" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "local_58"))) (; ";")) (if_statement "if (*(int *)(lVar2 + 0x110) == 0) {\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }\n          else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }" (if "if") (parenthesized_expression "(*(int *)(lVar2 + 0x110) == 0)" (( "(") (binary_expression "*(int *)(lVar2 + 0x110) == 0" (pointer_expression "*(int *)(lVar2 + 0x110)" (* "*") (cast_expression "(int *)(lVar2 + 0x110)" (( "(") (type_descriptor "int *" (primitive_type "int") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar2 + 0x110)" (( "(") (binary_expression "lVar2 + 0x110" (identifier "lVar2") (+ "+") (number_literal "0x110")) () ")")))) (== "==") (number_literal "0")) () ")")) (compound_statement "{\n            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));\n            if (uVar19 < local_68) goto LAB_00106f7e;\nLAB_00106fe6:\n            puVar12 = local_58;\n            if (DAT_001195dc != 0) goto code_r0x00106fee;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);\n            iVar3 = iVar14;\n            if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }\n            printf(" %s ",local_58);\n            uVar13 = *(uint *)(lVar2 + 0x130);\n            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);\n            sprintf((char *)local_58,pcVar8,(ulong)uVar13);\n            printf("%s",local_58);\n            puVar12 = local_58;\n            do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);\n            bVar20 = (uVar16 & 0x8080) == 0;\n            if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }\n            if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }\n            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;\n          }" ({ "{") (expression_statement "sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));" (call_expression "sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108))" (identifier "sprintf") (argument_list "((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108))" (( "(") (cast_expression "(char *)local_58" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_58")) (, ",") (string_literal ""(%d)"" (" """) (string_content "(%d)") (" """)) (, ",") (binary_expression "(ulong)*(uint *)(lVar2 + 0x108)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (cast_expression "(uint *)(lVar2 + 0x108)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar2 + 0x108)" (( "(") (binary_expression "lVar2 + 0x108" (identifier "lVar2") (+ "+") (number_literal "0x108")) () ")")))) () ")"))) (; ";")) (if_statement "if (uVar19 < local_68) goto LAB_00106f7e;" (if "if") (parenthesized_expression "(uVar19 < local_68)" (( "(") (binary_expression "uVar19 < local_68" (identifier "uVar19") (< "<") (identifier "local_68")) () ")")) (goto_statement "goto LAB_00106f7e;" (goto "goto") (statement_identifier "LAB_00106f7e") (; ";"))) (labeled_statement "LAB_00106fe6:\n            puVar12 = local_58;" (statement_identifier "LAB_00106fe6") (: ":") (expression_statement "puVar12 = local_58;" (assignment_expression "puVar12 = local_58" (identifier "puVar12") (= "=") (identifier "local_58")) (; ";"))) (if_statement "if (DAT_001195dc != 0) goto code_r0x00106fee;" (if "if") (parenthesized_expression "(DAT_001195dc != 0)" (( "(") (binary_expression "DAT_001195dc != 0" (identifier "DAT_001195dc") (!= "!=") (number_literal "0")) () ")")) (goto_statement "goto code_r0x00106fee;" (goto "goto") (statement_identifier "code_r0x00106fee") (; ";"))) (do_statement "do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);" (do "do") (compound_statement "{\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            }" ({ "{") (expression_statement "puVar11 = puVar12;" (assignment_expression "puVar11 = puVar12" (identifier "puVar11") (= "=") (identifier "puVar12")) (; ";")) (expression_statement "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;" (assignment_expression "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11" (identifier "uVar16") (= "=") (binary_expression "*puVar11 + 0xfefefeff & ~*puVar11" (binary_expression "*puVar11 + 0xfefefeff" (pointer_expression "*puVar11" (* "*") (identifier "puVar11")) (+ "+") (number_literal "0xfefefeff")) (& "&") (unary_expression "~*puVar11" (~ "~") (pointer_expression "*puVar11" (* "*") (identifier "puVar11"))))) (; ";")) (expression_statement "uVar13 = uVar16 & 0x80808080;" (assignment_expression "uVar13 = uVar16 & 0x80808080" (identifier "uVar13") (= "=") (binary_expression "uVar16 & 0x80808080" (identifier "uVar16") (& "&") (number_literal "0x80808080"))) (; ";")) (expression_statement "puVar12 = puVar11 + 1;" (assignment_expression "puVar12 = puVar11 + 1" (identifier "puVar12") (= "=") (binary_expression "puVar11 + 1" (identifier "puVar11") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(uVar13 == 0)" (( "(") (binary_expression "uVar13 == 0" (identifier "uVar13") (== "==") (number_literal "0")) () ")")) (; ";")) (expression_statement "bVar20 = (uVar16 & 0x8080) == 0;" (assignment_expression "bVar20 = (uVar16 & 0x8080) == 0" (identifier "bVar20") (= "=") (binary_expression "(uVar16 & 0x8080) == 0" (parenthesized_expression "(uVar16 & 0x8080)" (( "(") (binary_expression "uVar16 & 0x8080" (identifier "uVar16") (& "&") (number_literal "0x8080")) () ")")) (== "==") (number_literal "0"))) (; ";")) (if_statement "if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }" (if "if") (parenthesized_expression "(bVar20)" (( "(") (identifier "bVar20") () ")")) (compound_statement "{\n              uVar13 = uVar13 >> 0x10;\n            }" ({ "{") (expression_statement "uVar13 = uVar13 >> 0x10;" (assignment_expression "uVar13 = uVar13 >> 0x10" (identifier "uVar13") (= "=") (binary_expression "uVar13 >> 0x10" (identifier "uVar13") (>> ">>") (number_literal "0x10"))) (; ";")) (} "}"))) (if_statement "if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }" (if "if") (parenthesized_expression "(bVar20)" (( "(") (identifier "bVar20") () ")")) (compound_statement "{\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }" ({ "{") (expression_statement "puVar12 = (uint *)((long)puVar11 + 6);" (assignment_expression "puVar12 = (uint *)((long)puVar11 + 6)" (identifier "puVar12") (= "=") (cast_expression "(uint *)((long)puVar11 + 6)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar11 + 6)" (( "(") (binary_expression "(long)puVar11 + 6" (cast_expression "(long)puVar11" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar11")) (+ "+") (number_literal "6")) () ")")))) (; ";")) (} "}"))) (expression_statement "iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6);" (assignment_expression "iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6)" (identifier "iVar14") (= "=") (binary_expression "iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6)" (identifier "iVar14") (+ "+") (parenthesized_expression "((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6)" (( "(") (binary_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                              iVar6" (parenthesized_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13))" (( "(") (binary_expression "((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)" (parenthesized_expression "((int)puVar12 + -3)" (( "(") (binary_expression "(int)puVar12 + -3" (cast_expression "(int)puVar12" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar12")) (+ "+") (number_literal "-3")) () ")")) (- "-") (cast_expression "(uint)CARRY1((byte)uVar13,(byte)uVar13)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY1((byte)uVar13,(byte)uVar13)" (identifier "CARRY1") (argument_list "((byte)uVar13,(byte)uVar13)" (( "(") (cast_expression "(byte)uVar13" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar13")) (, ",") (cast_expression "(byte)uVar13" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar13")) () ")"))))) () ")")) (- "-") (identifier "iVar6")) () ")")))) (; ";")) (expression_statement "iVar3 = iVar14;" (assignment_expression "iVar3 = iVar14" (identifier "iVar3") (= "=") (identifier "iVar14")) (; ";")) (if_statement "if (iVar14 <= iVar18 + -1) {\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }" (if "if") (parenthesized_expression "(iVar14 <= iVar18 + -1)" (( "(") (binary_expression "iVar14 <= iVar18 + -1" (identifier "iVar14") (<= "<=") (binary_expression "iVar18 + -1" (identifier "iVar18") (+ "+") (number_literal "-1"))) () ")")) (compound_statement "{\n              do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);\n            }" ({ "{") (do_statement "do {\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              } while (iVar18 != iVar14);" (do "do") (compound_statement "{\n                iVar14 = iVar14 + 1;\n                putc(0x20,stdout);\n                iVar3 = iVar18;\n              }" ({ "{") (expression_statement "iVar14 = iVar14 + 1;" (assignment_expression "iVar14 = iVar14 + 1" (identifier "iVar14") (= "=") (binary_expression "iVar14 + 1" (identifier "iVar14") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "putc(0x20,stdout);" (call_expression "putc(0x20,stdout)" (identifier "putc") (argument_list "(0x20,stdout)" (( "(") (number_literal "0x20") (, ",") (identifier "stdout") () ")"))) (; ";")) (expression_statement "iVar3 = iVar18;" (assignment_expression "iVar3 = iVar18" (identifier "iVar3") (= "=") (identifier "iVar18")) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar18 != iVar14)" (( "(") (binary_expression "iVar18 != iVar14" (identifier "iVar18") (!= "!=") (identifier "iVar14")) () ")")) (; ";")) (} "}"))) (expression_statement "printf(" %s ",local_58);" (call_expression "printf(" %s ",local_58)" (identifier "printf") (argument_list "(" %s ",local_58)" (( "(") (string_literal "" %s "" (" """) (string_content " %s ") (" """)) (, ",") (identifier "local_58") () ")"))) (; ";")) (expression_statement "uVar13 = *(uint *)(lVar2 + 0x130);" (assignment_expression "uVar13 = *(uint *)(lVar2 + 0x130)" (identifier "uVar13") (= "=") (pointer_expression "*(uint *)(lVar2 + 0x130)" (* "*") (cast_expression "(uint *)(lVar2 + 0x130)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar2 + 0x130)" (( "(") (binary_expression "lVar2 + 0x130" (identifier "lVar2") (+ "+") (number_literal "0x130")) () ")"))))) (; ";")) (expression_statement "pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);" (assignment_expression "pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5)" (identifier "pcVar8") (= "=") (cast_expression "(char *)dcgettext("gprof","<cycle %d>",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext("gprof","<cycle %d>",5)" (identifier "dcgettext") (argument_list "("gprof","<cycle %d>",5)" (( "(") (string_literal ""gprof"" (" """) (string_content "gprof") (" """)) (, ",") (string_literal ""<cycle %d>"" (" """) (string_content "<cycle %d>") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "sprintf((char *)local_58,pcVar8,(ulong)uVar13);" (call_expression "sprintf((char *)local_58,pcVar8,(ulong)uVar13)" (identifier "sprintf") (argument_list "((char *)local_58,pcVar8,(ulong)uVar13)" (( "(") (cast_expression "(char *)local_58" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_58")) (, ",") (identifier "pcVar8") (, ",") (cast_expression "(ulong)uVar13" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar13")) () ")"))) (; ";")) (expression_statement "printf("%s",local_58);" (call_expression "printf("%s",local_58)" (identifier "printf") (argument_list "("%s",local_58)" (( "(") (string_literal ""%s"" (" """) (string_content "%s") (" """)) (, ",") (identifier "local_58") () ")"))) (; ";")) (expression_statement "puVar12 = local_58;" (assignment_expression "puVar12 = local_58" (identifier "puVar12") (= "=") (identifier "local_58")) (; ";")) (do_statement "do {\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            } while (uVar13 == 0);" (do "do") (compound_statement "{\n              puVar11 = puVar12;\n              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n              uVar13 = uVar16 & 0x80808080;\n              puVar12 = puVar11 + 1;\n            }" ({ "{") (expression_statement "puVar11 = puVar12;" (assignment_expression "puVar11 = puVar12" (identifier "puVar11") (= "=") (identifier "puVar12")) (; ";")) (expression_statement "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;" (assignment_expression "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11" (identifier "uVar16") (= "=") (binary_expression "*puVar11 + 0xfefefeff & ~*puVar11" (binary_expression "*puVar11 + 0xfefefeff" (pointer_expression "*puVar11" (* "*") (identifier "puVar11")) (+ "+") (number_literal "0xfefefeff")) (& "&") (unary_expression "~*puVar11" (~ "~") (pointer_expression "*puVar11" (* "*") (identifier "puVar11"))))) (; ";")) (expression_statement "uVar13 = uVar16 & 0x80808080;" (assignment_expression "uVar13 = uVar16 & 0x80808080" (identifier "uVar13") (= "=") (binary_expression "uVar16 & 0x80808080" (identifier "uVar16") (& "&") (number_literal "0x80808080"))) (; ";")) (expression_statement "puVar12 = puVar11 + 1;" (assignment_expression "puVar12 = puVar11 + 1" (identifier "puVar12") (= "=") (binary_expression "puVar11 + 1" (identifier "puVar11") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(uVar13 == 0)" (( "(") (binary_expression "uVar13 == 0" (identifier "uVar13") (== "==") (number_literal "0")) () ")")) (; ";")) (expression_statement "bVar20 = (uVar16 & 0x8080) == 0;" (assignment_expression "bVar20 = (uVar16 & 0x8080) == 0" (identifier "bVar20") (= "=") (binary_expression "(uVar16 & 0x8080) == 0" (parenthesized_expression "(uVar16 & 0x8080)" (( "(") (binary_expression "uVar16 & 0x8080" (identifier "uVar16") (& "&") (number_literal "0x8080")) () ")")) (== "==") (number_literal "0"))) (; ";")) (if_statement "if (bVar20) {\n              uVar13 = uVar13 >> 0x10;\n            }" (if "if") (parenthesized_expression "(bVar20)" (( "(") (identifier "bVar20") () ")")) (compound_statement "{\n              uVar13 = uVar13 >> 0x10;\n            }" ({ "{") (expression_statement "uVar13 = uVar13 >> 0x10;" (assignment_expression "uVar13 = uVar13 >> 0x10" (identifier "uVar13") (= "=") (binary_expression "uVar13 >> 0x10" (identifier "uVar13") (>> ">>") (number_literal "0x10"))) (; ";")) (} "}"))) (if_statement "if (bVar20) {\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }" (if "if") (parenthesized_expression "(bVar20)" (( "(") (identifier "bVar20") () ")")) (compound_statement "{\n              puVar12 = (uint *)((long)puVar11 + 6);\n            }" ({ "{") (expression_statement "puVar12 = (uint *)((long)puVar11 + 6);" (assignment_expression "puVar12 = (uint *)((long)puVar11 + 6)" (identifier "puVar12") (= "=") (cast_expression "(uint *)((long)puVar11 + 6)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar11 + 6)" (( "(") (binary_expression "(long)puVar11 + 6" (cast_expression "(long)puVar11" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar11")) (+ "+") (number_literal "6")) () ")")))) (; ";")) (} "}"))) (expression_statement "iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3;" (assignment_expression "iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3" (identifier "iVar14") (= "=") (binary_expression "((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +\n                     iVar3" (parenthesized_expression "((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6)" (( "(") (binary_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6" (parenthesized_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13))" (( "(") (binary_expression "((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)" (parenthesized_expression "((int)puVar12 + -3)" (( "(") (binary_expression "(int)puVar12 + -3" (cast_expression "(int)puVar12" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar12")) (+ "+") (number_literal "-3")) () ")")) (- "-") (cast_expression "(uint)CARRY1((byte)uVar13,(byte)uVar13)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY1((byte)uVar13,(byte)uVar13)" (identifier "CARRY1") (argument_list "((byte)uVar13,(byte)uVar13)" (( "(") (cast_expression "(byte)uVar13" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar13")) (, ",") (cast_expression "(byte)uVar13" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar13")) () ")"))))) () ")")) (- "-") (identifier "iVar6")) () ")")) (+ "+") (identifier "iVar3"))) (; ";")) (} "}")) (else_clause "else {\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }" (else "else") (compound_statement "{\n            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));\n            if (local_68 <= uVar19) goto LAB_00106fe6;\nLAB_00106f7e:\n            puVar12 = local_58;\n            if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }\n          }" ({ "{") (expression_statement "sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));" (call_expression "sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108))" (identifier "sprintf") (argument_list "((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108))" (( "(") (cast_expression "(char *)local_58" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_58")) (, ",") (string_literal ""[%d]"" (" """) (string_content "[%d]") (" """)) (, ",") (binary_expression "(ulong)*(uint *)(lVar2 + 0x108)" (parenthesized_expression "(ulong)" (( "(") (identifier "ulong") () ")")) (* "*") (cast_expression "(uint *)(lVar2 + 0x108)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar2 + 0x108)" (( "(") (binary_expression "lVar2 + 0x108" (identifier "lVar2") (+ "+") (number_literal "0x108")) () ")")))) () ")"))) (; ";")) (if_statement "if (local_68 <= uVar19) goto LAB_00106fe6;" (if "if") (parenthesized_expression "(local_68 <= uVar19)" (( "(") (binary_expression "local_68 <= uVar19" (identifier "local_68") (<= "<=") (identifier "uVar19")) () ")")) (goto_statement "goto LAB_00106fe6;" (goto "goto") (statement_identifier "LAB_00106fe6") (; ";"))) (labeled_statement "LAB_00106f7e:\n            puVar12 = local_58;" (statement_identifier "LAB_00106f7e") (: ":") (expression_statement "puVar12 = local_58;" (assignment_expression "puVar12 = local_58" (identifier "puVar12") (= "=") (identifier "local_58")) (; ";"))) (if_statement "if (DAT_001195dc == 0) {\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }\n            else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }" (if "if") (parenthesized_expression "(DAT_001195dc == 0)" (( "(") (binary_expression "DAT_001195dc == 0" (identifier "DAT_001195dc") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n              do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);\n              bVar20 = (uVar16 & 0x8080) == 0;\n              if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }\n              if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }\n              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);\n              if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }\n              printf(" %s ",local_58);\n              iVar6 = FUN_0010ce70(lVar2);\n              iVar14 = iVar14 + iVar6;\n              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }\n            }" ({ "{") (do_statement "do {\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              } while (uVar13 == 0);" (do "do") (compound_statement "{\n                puVar11 = puVar12;\n                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;\n                uVar13 = uVar16 & 0x80808080;\n                puVar12 = puVar11 + 1;\n              }" ({ "{") (expression_statement "puVar11 = puVar12;" (assignment_expression "puVar11 = puVar12" (identifier "puVar11") (= "=") (identifier "puVar12")) (; ";")) (expression_statement "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;" (assignment_expression "uVar16 = *puVar11 + 0xfefefeff & ~*puVar11" (identifier "uVar16") (= "=") (binary_expression "*puVar11 + 0xfefefeff & ~*puVar11" (binary_expression "*puVar11 + 0xfefefeff" (pointer_expression "*puVar11" (* "*") (identifier "puVar11")) (+ "+") (number_literal "0xfefefeff")) (& "&") (unary_expression "~*puVar11" (~ "~") (pointer_expression "*puVar11" (* "*") (identifier "puVar11"))))) (; ";")) (expression_statement "uVar13 = uVar16 & 0x80808080;" (assignment_expression "uVar13 = uVar16 & 0x80808080" (identifier "uVar13") (= "=") (binary_expression "uVar16 & 0x80808080" (identifier "uVar16") (& "&") (number_literal "0x80808080"))) (; ";")) (expression_statement "puVar12 = puVar11 + 1;" (assignment_expression "puVar12 = puVar11 + 1" (identifier "puVar12") (= "=") (binary_expression "puVar11 + 1" (identifier "puVar11") (+ "+") (number_literal "1"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(uVar13 == 0)" (( "(") (binary_expression "uVar13 == 0" (identifier "uVar13") (== "==") (number_literal "0")) () ")")) (; ";")) (expression_statement "bVar20 = (uVar16 & 0x8080) == 0;" (assignment_expression "bVar20 = (uVar16 & 0x8080) == 0" (identifier "bVar20") (= "=") (binary_expression "(uVar16 & 0x8080) == 0" (parenthesized_expression "(uVar16 & 0x8080)" (( "(") (binary_expression "uVar16 & 0x8080" (identifier "uVar16") (& "&") (number_literal "0x8080")) () ")")) (== "==") (number_literal "0"))) (; ";")) (if_statement "if (bVar20) {\n                uVar13 = uVar13 >> 0x10;\n              }" (if "if") (parenthesized_expression "(bVar20)" (( "(") (identifier "bVar20") () ")")) (compound_statement "{\n                uVar13 = uVar13 >> 0x10;\n              }" ({ "{") (expression_statement "uVar13 = uVar13 >> 0x10;" (assignment_expression "uVar13 = uVar13 >> 0x10" (identifier "uVar13") (= "=") (binary_expression "uVar13 >> 0x10" (identifier "uVar13") (>> ">>") (number_literal "0x10"))) (; ";")) (} "}"))) (if_statement "if (bVar20) {\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }" (if "if") (parenthesized_expression "(bVar20)" (( "(") (identifier "bVar20") () ")")) (compound_statement "{\n                puVar12 = (uint *)((long)puVar11 + 6);\n              }" ({ "{") (expression_statement "puVar12 = (uint *)((long)puVar11 + 6);" (assignment_expression "puVar12 = (uint *)((long)puVar11 + 6)" (identifier "puVar12") (= "=") (cast_expression "(uint *)((long)puVar11 + 6)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "((long)puVar11 + 6)" (( "(") (binary_expression "(long)puVar11 + 6" (cast_expression "(long)puVar11" (( "(") (type_descriptor "long" (sized_type_specifier "long" (long "long"))) () ")") (identifier "puVar11")) (+ "+") (number_literal "6")) () ")")))) (; ";")) (} "}"))) (expression_statement "iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6);" (assignment_expression "iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6)" (identifier "iVar14") (= "=") (binary_expression "iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6)" (identifier "iVar14") (+ "+") (parenthesized_expression "((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6)" (( "(") (binary_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -\n                                iVar6" (parenthesized_expression "(((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13))" (( "(") (binary_expression "((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)" (parenthesized_expression "((int)puVar12 + -3)" (( "(") (binary_expression "(int)puVar12 + -3" (cast_expression "(int)puVar12" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "puVar12")) (+ "+") (number_literal "-3")) () ")")) (- "-") (cast_expression "(uint)CARRY1((byte)uVar13,(byte)uVar13)" (( "(") (type_descriptor "uint" (type_identifier "uint")) () ")") (call_expression "CARRY1((byte)uVar13,(byte)uVar13)" (identifier "CARRY1") (argument_list "((byte)uVar13,(byte)uVar13)" (( "(") (cast_expression "(byte)uVar13" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar13")) (, ",") (cast_expression "(byte)uVar13" (( "(") (type_descriptor "byte" (type_identifier "byte")) () ")") (identifier "uVar13")) () ")"))))) () ")")) (- "-") (identifier "iVar6")) () ")")))) (; ";")) (if_statement "if (iVar14 <= iVar18 + -1) {\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }" (if "if") (parenthesized_expression "(iVar14 <= iVar18 + -1)" (( "(") (binary_expression "iVar14 <= iVar18 + -1" (identifier "iVar14") (<= "<=") (binary_expression "iVar18 + -1" (identifier "iVar18") (+ "+") (number_literal "-1"))) () ")")) (compound_statement "{\n                do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);\n              }" ({ "{") (do_statement "do {\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                } while (iVar14 != iVar18);" (do "do") (compound_statement "{\n                  iVar14 = iVar14 + 1;\n                  putc(0x20,stdout);\n                }" ({ "{") (expression_statement "iVar14 = iVar14 + 1;" (assignment_expression "iVar14 = iVar14 + 1" (identifier "iVar14") (= "=") (binary_expression "iVar14 + 1" (identifier "iVar14") (+ "+") (number_literal "1"))) (; ";")) (expression_statement "putc(0x20,stdout);" (call_expression "putc(0x20,stdout)" (identifier "putc") (argument_list "(0x20,stdout)" (( "(") (number_literal "0x20") (, ",") (identifier "stdout") () ")"))) (; ";")) (} "}")) (while "while") (parenthesized_expression "(iVar14 != iVar18)" (( "(") (binary_expression "iVar14 != iVar18" (identifier "iVar14") (!= "!=") (identifier "iVar18")) () ")")) (; ";")) (} "}"))) (expression_statement "printf(" %s ",local_58);" (call_expression "printf(" %s ",local_58)" (identifier "printf") (argument_list "(" %s ",local_58)" (( "(") (string_literal "" %s "" (" """) (string_content " %s ") (" """)) (, ",") (identifier "local_58") () ")"))) (; ";")) (expression_statement "iVar6 = FUN_0010ce70(lVar2);" (assignment_expression "iVar6 = FUN_0010ce70(lVar2)" (identifier "iVar6") (= "=") (call_expression "FUN_0010ce70(lVar2)" (identifier "FUN_0010ce70") (argument_list "(lVar2)" (( "(") (identifier "lVar2") () ")")))) (; ";")) (expression_statement "iVar14 = iVar14 + iVar6;" (assignment_expression "iVar14 = iVar14 + iVar6" (identifier "iVar14") (= "=") (binary_expression "iVar14 + iVar6" (identifier "iVar14") (+ "+") (identifier "iVar6"))) (; ";")) (if_statement "if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)) {\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }" (if "if") (parenthesized_expression "(((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0))" (( "(") (binary_expression "((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&\n                 (*(long *)(lVar2 + 0x18) != 0)" (parenthesized_expression "((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0))" (( "(") (binary_expression "(DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)" (parenthesized_expression "(DAT_001195d0 == 0)" (( "(") (binary_expression "DAT_001195d0 == 0" (identifier "DAT_001195d0") (== "==") (number_literal "0")) () ")")) (&& "&&") (parenthesized_expression "((*(byte *)(lVar2 + 0x24) & 2) != 0)" (( "(") (binary_expression "(*(byte *)(lVar2 + 0x24) & 2) != 0" (parenthesized_expression "(*(byte *)(lVar2 + 0x24) & 2)" (( "(") (binary_expression "*(byte *)(lVar2 + 0x24) & 2" (pointer_expression "*(byte *)(lVar2 + 0x24)" (* "*") (cast_expression "(byte *)(lVar2 + 0x24)" (( "(") (type_descriptor "byte *" (type_identifier "byte") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar2 + 0x24)" (( "(") (binary_expression "lVar2 + 0x24" (identifier "lVar2") (+ "+") (number_literal "0x24")) () ")")))) (& "&") (number_literal "2")) () ")")) (!= "!=") (number_literal "0")) () ")"))) () ")")) (&& "&&") (parenthesized_expression "(*(long *)(lVar2 + 0x18) != 0)" (( "(") (binary_expression "*(long *)(lVar2 + 0x18) != 0" (pointer_expression "*(long *)(lVar2 + 0x18)" (* "*") (cast_expression "(long *)(lVar2 + 0x18)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar2 + 0x18)" (( "(") (binary_expression "lVar2 + 0x18" (identifier "lVar2") (+ "+") (number_literal "0x18")) () ")")))) (!= "!=") (number_literal "0")) () ")"))) () ")")) (compound_statement "{\n                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);\n                if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }\n                printf(" (%s)",pcVar8);\n                sVar10 = strlen(pcVar8);\n                iVar14 = iVar14 + 3 + (int)sVar10;\n              }" ({ "{") (expression_statement "pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);" (assignment_expression "pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8)" (identifier "pcVar8") (= "=") (pointer_expression "*(char **)(*(long *)(lVar2 + 0x18) + 8)" (* "*") (cast_expression "(char **)(*(long *)(lVar2 + 0x18) + 8)" (( "(") (type_descriptor "char **" (primitive_type "char") (abstract_pointer_declarator "**" (* "*") (abstract_pointer_declarator "*" (* "*")))) () ")") (parenthesized_expression "(*(long *)(lVar2 + 0x18) + 8)" (( "(") (binary_expression "*(long *)(lVar2 + 0x18) + 8" (pointer_expression "*(long *)(lVar2 + 0x18)" (* "*") (cast_expression "(long *)(lVar2 + 0x18)" (( "(") (type_descriptor "long *" (sized_type_specifier "long" (long "long")) (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar2 + 0x18)" (( "(") (binary_expression "lVar2 + 0x18" (identifier "lVar2") (+ "+") (number_literal "0x18")) () ")")))) (+ "+") (number_literal "8")) () ")"))))) (; ";")) (if_statement "if (DAT_001195cc == 0) {\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }" (if "if") (parenthesized_expression "(DAT_001195cc == 0)" (( "(") (binary_expression "DAT_001195cc == 0" (identifier "DAT_001195cc") (== "==") (number_literal "0")) () ")")) (compound_statement "{\n                  pcVar9 = strrchr(pcVar8,0x2f);\n                  if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }\n                }" ({ "{") (expression_statement "pcVar9 = strrchr(pcVar8,0x2f);" (assignment_expression "pcVar9 = strrchr(pcVar8,0x2f)" (identifier "pcVar9") (= "=") (call_expression "strrchr(pcVar8,0x2f)" (identifier "strrchr") (argument_list "(pcVar8,0x2f)" (( "(") (identifier "pcVar8") (, ",") (number_literal "0x2f") () ")")))) (; ";")) (if_statement "if (pcVar9 != (char *)0x0) {\n                    pcVar8 = pcVar9 + 1;\n                  }" (if "if") (parenthesized_expression "(pcVar9 != (char *)0x0)" (( "(") (binary_expression "pcVar9 != (char *)0x0" (identifier "pcVar9") (!= "!=") (cast_expression "(char *)0x0" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (number_literal "0x0"))) () ")")) (compound_statement "{\n                    pcVar8 = pcVar9 + 1;\n                  }" ({ "{") (expression_statement "pcVar8 = pcVar9 + 1;" (assignment_expression "pcVar8 = pcVar9 + 1" (identifier "pcVar8") (= "=") (binary_expression "pcVar9 + 1" (identifier "pcVar9") (+ "+") (number_literal "1"))) (; ";")) (} "}"))) (} "}"))) (expression_statement "printf(" (%s)",pcVar8);" (call_expression "printf(" (%s)",pcVar8)" (identifier "printf") (argument_list "(" (%s)",pcVar8)" (( "(") (string_literal "" (%s)"" (" """) (string_content " (%s)") (" """)) (, ",") (identifier "pcVar8") () ")"))) (; ";")) (expression_statement "sVar10 = strlen(pcVar8);" (assignment_expression "sVar10 = strlen(pcVar8)" (identifier "sVar10") (= "=") (call_expression "strlen(pcVar8)" (identifier "strlen") (argument_list "(pcVar8)" (( "(") (identifier "pcVar8") () ")")))) (; ";")) (expression_statement "iVar14 = iVar14 + 3 + (int)sVar10;" (assignment_expression "iVar14 = iVar14 + 3 + (int)sVar10" (identifier "iVar14") (= "=") (binary_expression "iVar14 + 3 + (int)sVar10" (binary_expression "iVar14 + 3" (identifier "iVar14") (+ "+") (number_literal "3")) (+ "+") (cast_expression "(int)sVar10" (( "(") (type_descriptor "int" (primitive_type "int")) () ")") (identifier "sVar10")))) (; ";")) (} "}"))) (} "}")) (else_clause "else {\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }" (else "else") (compound_statement "{\n              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));\n            }" ({ "{") (expression_statement "printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));" (call_expression "printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10))" (identifier "printf") (argument_list "("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10))" (( "(") (string_literal ""%6.6s %-19.19s"" (" """) (string_content "%6.6s %-19.19s") (" """)) (, ",") (identifier "local_58") (, ",") (pointer_expression "*(undefined8 *)(lVar2 + 0x10)" (* "*") (cast_expression "(undefined8 *)(lVar2 + 0x10)" (( "(") (type_descriptor "undefined8 *" (type_identifier "undefined8") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar2 + 0x10)" (( "(") (binary_expression "lVar2 + 0x10" (identifier "lVar2") (+ "+") (number_literal "0x10")) () ")")))) () ")"))) (; ";")) (} "}")))) (} "}")))) (expression_statement "uVar19 = uVar19 + uVar1;" (assignment_expression "uVar19 = uVar19 + uVar1" (identifier "uVar19") (= "=") (binary_expression "uVar19 + uVar1" (identifier "uVar19") (+ "+") (identifier "uVar1"))) (; ";")) (expression_statement "iVar18 = iVar18 + iVar4;" (assignment_expression "iVar18 = iVar18 + iVar4" (identifier "iVar18") (= "=") (binary_expression "iVar18 + iVar4" (identifier "iVar18") (+ "+") (identifier "iVar4"))) (; ";")) (if_statement "if (local_70 <= uVar19) break;" (if "if") (parenthesized_expression "(local_70 <= uVar19)" (( "(") (binary_expression "local_70 <= uVar19" (identifier "local_70") (<= "<=") (identifier "uVar19")) () ")")) (break_statement "break;" (break "break") (; ";"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}")))) (expression_statement "putchar(10);" (call_expression "putchar(10)" (identifier "putchar") (argument_list "(10)" (( "(") (number_literal "10") () ")"))) (; ";")) (expression_statement "local_60 = local_60 + 1;" (assignment_expression "local_60 = local_60 + 1" (identifier "local_60") (= "=") (binary_expression "local_60 + 1" (identifier "local_60") (+ "+") (number_literal "1"))) (; ";")) (if_statement "if (uVar1 <= local_60) break;" (if "if") (parenthesized_expression "(uVar1 <= local_60)" (( "(") (binary_expression "uVar1 <= local_60" (identifier "uVar1") (<= "<=") (identifier "local_60")) () ")")) (break_statement "break;" (break "break") (; ";"))) (} "}")) (while "while") (parenthesized_expression "( true )" (( "(") (true "true") () ")")) (; ";")) (} "}"))) (labeled_statement "LAB_00107070:\n  free(__base);" (statement_identifier "LAB_00107070") (: ":") (expression_statement "free(__base);" (call_expression "free(__base)" (identifier "free") (argument_list "(__base)" (( "(") (identifier "__base") () ")"))) (; ";"))) (return_statement "return;" (return "return") (; ";")) (labeled_statement "code_r0x00106fee:\n  printf("%6.6s ",local_58);" (statement_identifier "code_r0x00106fee") (: ":") (expression_statement "printf("%6.6s ",local_58);" (call_expression "printf("%6.6s ",local_58)" (identifier "printf") (argument_list "("%6.6s ",local_58)" (( "(") (string_literal ""%6.6s "" (" """) (string_content "%6.6s ") (" """)) (, ",") (identifier "local_58") () ")"))) (; ";"))) (expression_statement "uVar13 = *(uint *)(lVar2 + 0x130);" (assignment_expression "uVar13 = *(uint *)(lVar2 + 0x130)" (identifier "uVar13") (= "=") (pointer_expression "*(uint *)(lVar2 + 0x130)" (* "*") (cast_expression "(uint *)(lVar2 + 0x130)" (( "(") (type_descriptor "uint *" (type_identifier "uint") (abstract_pointer_declarator "*" (* "*"))) () ")") (parenthesized_expression "(lVar2 + 0x130)" (( "(") (binary_expression "lVar2 + 0x130" (identifier "lVar2") (+ "+") (number_literal "0x130")) () ")"))))) (; ";")) (expression_statement "pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);" (assignment_expression "pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5)" (identifier "pcVar8") (= "=") (cast_expression "(char *)dcgettext("gprof","<cycle %d>",5)" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (call_expression "dcgettext("gprof","<cycle %d>",5)" (identifier "dcgettext") (argument_list "("gprof","<cycle %d>",5)" (( "(") (string_literal ""gprof"" (" """) (string_content "gprof") (" """)) (, ",") (string_literal ""<cycle %d>"" (" """) (string_content "<cycle %d>") (" """)) (, ",") (number_literal "5") () ")"))))) (; ";")) (expression_statement "sprintf((char *)local_58,pcVar8,(ulong)uVar13);" (call_expression "sprintf((char *)local_58,pcVar8,(ulong)uVar13)" (identifier "sprintf") (argument_list "((char *)local_58,pcVar8,(ulong)uVar13)" (( "(") (cast_expression "(char *)local_58" (( "(") (type_descriptor "char *" (primitive_type "char") (abstract_pointer_declarator "*" (* "*"))) () ")") (identifier "local_58")) (, ",") (identifier "pcVar8") (, ",") (cast_expression "(ulong)uVar13" (( "(") (type_descriptor "ulong" (type_identifier "ulong")) () ")") (identifier "uVar13")) () ")"))) (; ";")) (expression_statement "printf("%-19.19s",local_58);" (call_expression "printf("%-19.19s",local_58)" (identifier "printf") (argument_list "("%-19.19s",local_58)" (( "(") (string_literal ""%-19.19s"" (" """) (string_content "%-19.19s") (" """)) (, ",") (identifier "local_58") () ")"))) (; ";")) (expression_statement "uVar19 = uVar19 + uVar1;" (assignment_expression "uVar19 = uVar19 + uVar1" (identifier "uVar19") (= "=") (binary_expression "uVar19 + uVar1" (identifier "uVar19") (+ "+") (identifier "uVar1"))) (; ";")) (expression_statement "iVar18 = iVar18 + iVar4;" (assignment_expression "iVar18 = iVar18 + iVar4" (identifier "iVar18") (= "=") (binary_expression "iVar18 + iVar4" (identifier "iVar18") (+ "+") (identifier "iVar4"))) (; ";")) (goto_statement "goto joined_r0x00106f52;" (goto "goto") (statement_identifier "joined_r0x00106f52") (; ";")) (} "}")))

/* WARNING: Unknown calling convention -- yet parameter storage is locked */

void function_1(void)

{
  type_1 var_12;
  type_2 *var_9;
  int var_26;
  int var_33;
  type_3 var_13;
  type_2 *pSVar6;
  int var_23;
  void *__base;
  type_2 *var_15;
  char *pcVar9;
  char *var_31;
  size_t sVar11;
  type_1 *var_20;
  type_1 *puVar13;
  type_1 var_11;
  int var_21;
  type_4 var_10;
  type_1 var_19;
  type_2 *pSVar18;
  int var_24;
  type_1 var_8;
  bool bVar21;
  type_1 var_14;
  type_1 var_17;
  type_1 var_35;
  char buf [20];
  
  var_33 = (var_1 + -1) / 3;
  __base = (void *)var_2((type_4)(var_3 + symtab.len) << 3);
  var_13 = ignore_zeros;
  var_17 = symtab.len;
  if (symtab.len == 0) {
    var_4(__base,0,8,cmp_name);
    if (var_3 == 0) {
      var_5("\f");
      pcVar9 = (char *)var_6("gprof","Index by function name\n\n",5);
      var_7(pcVar9);
      goto LAB_00107070;
    }
LAB_00106eaa:
    var_12 = var_3;
    var_9 = cycle_header;
    var_10 = 1;
    var_8 = var_17;
    do {
      var_14 = var_8 + 1;
      var_11 = (int)var_10 + 1;
      *(type_2 **)((long)__base + (type_4)var_8 * 8) = var_9 + var_10;
      var_10 = (type_4)var_11;
      var_8 = var_14;
    } while (var_11 <= var_12);
  }
  else {
    var_12 = symtab.len - 1;
    var_14 = 0;
    var_9 = symtab.base + 1;
    pSVar6 = var_9;
    pSVar18 = symtab.base;
    while( true ) {
      var_15 = pSVar6;
      if (((var_13 == 0) || (pSVar18->ncalls != 0)) || ((pSVar18->hist).time != 0.0)) {
        var_10 = (type_4)var_14;
        var_14 = var_14 + 1;
        *(type_2 **)((long)__base + var_10 * 8) = pSVar18;
      }
      if (var_9 + var_12 == var_15) break;
      pSVar6 = var_15 + 1;
      pSVar18 = var_15;
    }
    var_4(__base,(type_4)var_14,8,cmp_name);
    var_17 = var_14;
    if (var_3 != 0) goto LAB_00106eaa;
  }
  var_5("\f");
  pcVar9 = (char *)var_6("gprof","Index by function name\n\n",5);
  var_7(pcVar9);
  var_35 = 0;
  var_12 = (var_14 + 2) / 3;
  if (2 < var_14 + 2) {
    do {
      var_24 = 5;
      var_21 = 0;
      var_8 = var_35;
joined_r0x00106f52:
      if (var_8 < var_14) {
        do {
          var_9 = *(type_2 **)((long)__base + (type_4)var_8 * 8);
          var_10 = (type_4)(type_1)(var_9->cg).index;
          var_23 = (int)buf;
          if ((var_9->cg).print_flag == 0) {
            var_16(buf,"(%d)",var_10);
            if (var_8 < var_17) goto LAB_00106f7e;
LAB_00106fe6:
            puVar13 = (type_1 *)buf;
            if (var_18 != 0) goto code_r0x00106fee;
            do {
              var_20 = puVar13;
              var_19 = *var_20 + 0xfefefeff & ~*var_20;
              var_11 = var_19 & 0x80808080;
              puVar13 = var_20 + 1;
            } while (var_11 == 0);
            bVar21 = (var_19 & 0x8080) == 0;
            if (bVar21) {
              var_11 = var_11 >> 0x10;
            }
            if (bVar21) {
              puVar13 = (type_1 *)((long)var_20 + 6);
            }
            var_21 = var_21 + ((((int)puVar13 + -3) - (type_1)var_22((type_5)var_11,(type_5)var_11)) -
                              var_23);
            var_26 = var_21;
            if (var_21 <= var_24 + -1) {
              do {
                var_21 = var_21 + 1;
                var_25(0x20,stdout);
                var_26 = var_24;
              } while (var_24 != var_21);
            }
            var_7(" %s ",buf);
            var_11 = (var_9->cg).cyc.num;
            pcVar9 = (char *)var_6("gprof","<cycle %d>",5);
            var_16(buf,pcVar9,(type_4)var_11);
            var_7("%s",buf);
            puVar13 = (type_1 *)buf;
            do {
              var_20 = puVar13;
              var_19 = *var_20 + 0xfefefeff & ~*var_20;
              var_11 = var_19 & 0x80808080;
              puVar13 = var_20 + 1;
            } while (var_11 == 0);
            bVar21 = (var_19 & 0x8080) == 0;
            if (bVar21) {
              var_11 = var_11 >> 0x10;
            }
            if (bVar21) {
              puVar13 = (type_1 *)((long)var_20 + 6);
            }
            var_21 = ((((int)puVar13 + -3) - (type_1)var_22((type_5)var_11,(type_5)var_11)) - var_23) +
                     var_26;
          }
          else {
            var_16(buf,"[%d]",var_10);
            if (var_17 <= var_8) goto LAB_00106fe6;
LAB_00106f7e:
            puVar13 = (type_1 *)buf;
            if (var_18 == 0) {
              do {
                var_20 = puVar13;
                var_19 = *var_20 + 0xfefefeff & ~*var_20;
                var_11 = var_19 & 0x80808080;
                puVar13 = var_20 + 1;
              } while (var_11 == 0);
              bVar21 = (var_19 & 0x8080) == 0;
              if (bVar21) {
                var_11 = var_11 >> 0x10;
              }
              if (bVar21) {
                puVar13 = (type_1 *)((long)var_20 + 6);
              }
              var_21 = var_21 + ((((int)puVar13 + -3) - (type_1)var_22((type_5)var_11,(type_5)var_11)) -
                                var_23);
              if (var_21 <= var_24 + -1) {
                do {
                  var_21 = var_21 + 1;
                  var_25(0x20,stdout);
                } while (var_21 != var_24);
              }
              var_7(" %s ",buf);
              var_23 = var_27(var_9);
              var_21 = var_21 + var_23;
              if (((var_28 == 0) && ((var_9->field_0x24 & 2) != 0)) &&
                 (var_9->file != (type_6 *)0x0)) {
                pcVar9 = var_9->file->name;
                if (var_29 == 0) {
                  var_31 = var_30(pcVar9,0x2f);
                  if (var_31 != (char *)0x0) {
                    pcVar9 = var_31 + 1;
                  }
                }
                var_7(" (%s)",pcVar9);
                sVar11 = var_32(pcVar9);
                var_21 = var_21 + 3 + (int)sVar11;
              }
            }
            else {
              var_7("%6.6s %-19.19s",buf,var_9->name);
            }
          }
          var_8 = var_8 + var_12;
          var_24 = var_24 + var_33;
          if (var_14 <= var_8) break;
        } while( true );
      }
      var_34(10);
      var_35 = var_35 + 1;
      if (var_12 <= var_35) break;
    } while( true );
  }
LAB_00107070:
  var_36(__base);
  return;
code_r0x00106fee:
  var_7("%6.6s ",buf);
  var_11 = (var_9->cg).cyc.num;
  pcVar9 = (char *)var_6("gprof","<cycle %d>",5);
  var_16(buf,pcVar9,(type_4)var_11);
  var_7("%-19.19s",buf);
  var_8 = var_8 + var_12;
  var_24 = var_24 + var_33;
  goto joined_r0x00106f52;
}


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

void MASKED(void)

{
  uint uVar1;
  long lVar2;
  int iVar3;
  int iVar4;
  long lVar5;
  int iVar6;
  void *__base;
  long lVar7;
  char *pcVar8;
  char *pcVar9;
  size_t sVar10;
  uint *puVar11;
  uint *puVar12;
  uint uVar13;
  int iVar14;
  ulong uVar15;
  uint uVar16;
  long lVar17;
  int iVar18;
  uint uVar19;
  bool bVar20;
  uint local_70;
  uint local_68;
  uint local_60;
  uint local_58 [10];
  
  iVar4 = (DAT_001182e8 + -1) / 3;
  __base = (void *)xmalloc((ulong)(DAT_00119ad0 + DAT_00119b30) << 3);
  iVar18 = DAT_001182e0;
  local_68 = DAT_00119b30;
  if (DAT_00119b30 == 0) {
    qsort(__base,0,8,FUN_00106300);
    if (DAT_00119ad0 == 0) {
      puts("\f");
      pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);
      printf(pcVar8);
      goto LAB_00107070;
    }
LAB_00106eaa:
    uVar1 = DAT_00119ad0;
    lVar2 = DAT_00119ac0;
    uVar15 = 1;
    uVar19 = local_68;
    do {
      local_70 = uVar19 + 1;
      uVar13 = (int)uVar15 + 1;
      *(ulong *)((long)__base + (ulong)uVar19 * 8) = uVar15 * 0x158 + lVar2;
      uVar15 = (ulong)uVar13;
      uVar19 = local_70;
    } while (uVar13 <= uVar1);
  }
  else {
    uVar1 = DAT_00119b30 - 1;
    local_70 = 0;
    lVar2 = DAT_00119b38 + 0x158;
    lVar5 = lVar2;
    lVar17 = DAT_00119b38;
    while( true ) {
      lVar7 = lVar5;
      if (((iVar18 == 0) || (*(long *)(lVar17 + 0x28) != 0)) || (*(double *)(lVar17 + 0xe8) != 0.0))
      {
        uVar15 = (ulong)local_70;
        local_70 = local_70 + 1;
        *(long *)((long)__base + uVar15 * 8) = lVar17;
      }
      if ((ulong)uVar1 * 0x158 + lVar2 == lVar7) break;
      lVar5 = lVar7 + 0x158;
      lVar17 = lVar7;
    }
    qsort(__base,(ulong)local_70,8,FUN_00106300);
    local_68 = local_70;
    if (DAT_00119ad0 != 0) goto LAB_00106eaa;
  }
  puts("\f");
  pcVar8 = (char *)dcgettext("gprof","Index by function name\n\n",5);
  printf(pcVar8);
  local_60 = 0;
  uVar1 = (local_70 + 2) / 3;
  if (2 < local_70 + 2) {
    do {
      iVar18 = 5;
      iVar14 = 0;
      uVar19 = local_60;
joined_r0x00106f52:
      if (uVar19 < local_70) {
        do {
          lVar2 = *(long *)((long)__base + (ulong)uVar19 * 8);
          iVar6 = (int)local_58;
          if (*(int *)(lVar2 + 0x110) == 0) {
            sprintf((char *)local_58,"(%d)",(ulong)*(uint *)(lVar2 + 0x108));
            if (uVar19 < local_68) goto LAB_00106f7e;
LAB_00106fe6:
            puVar12 = local_58;
            if (DAT_001195dc != 0) goto code_r0x00106fee;
            do {
              puVar11 = puVar12;
              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;
              uVar13 = uVar16 & 0x80808080;
              puVar12 = puVar11 + 1;
            } while (uVar13 == 0);
            bVar20 = (uVar16 & 0x8080) == 0;
            if (bVar20) {
              uVar13 = uVar13 >> 0x10;
            }
            if (bVar20) {
              puVar12 = (uint *)((long)puVar11 + 6);
            }
            iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -
                              iVar6);
            iVar3 = iVar14;
            if (iVar14 <= iVar18 + -1) {
              do {
                iVar14 = iVar14 + 1;
                putc(0x20,stdout);
                iVar3 = iVar18;
              } while (iVar18 != iVar14);
            }
            printf(" %s ",local_58);
            uVar13 = *(uint *)(lVar2 + 0x130);
            pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);
            sprintf((char *)local_58,pcVar8,(ulong)uVar13);
            printf("%s",local_58);
            puVar12 = local_58;
            do {
              puVar11 = puVar12;
              uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;
              uVar13 = uVar16 & 0x80808080;
              puVar12 = puVar11 + 1;
            } while (uVar13 == 0);
            bVar20 = (uVar16 & 0x8080) == 0;
            if (bVar20) {
              uVar13 = uVar13 >> 0x10;
            }
            if (bVar20) {
              puVar12 = (uint *)((long)puVar11 + 6);
            }
            iVar14 = ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) - iVar6) +
                     iVar3;
          }
          else {
            sprintf((char *)local_58,"[%d]",(ulong)*(uint *)(lVar2 + 0x108));
            if (local_68 <= uVar19) goto LAB_00106fe6;
LAB_00106f7e:
            puVar12 = local_58;
            if (DAT_001195dc == 0) {
              do {
                puVar11 = puVar12;
                uVar16 = *puVar11 + 0xfefefeff & ~*puVar11;
                uVar13 = uVar16 & 0x80808080;
                puVar12 = puVar11 + 1;
              } while (uVar13 == 0);
              bVar20 = (uVar16 & 0x8080) == 0;
              if (bVar20) {
                uVar13 = uVar13 >> 0x10;
              }
              if (bVar20) {
                puVar12 = (uint *)((long)puVar11 + 6);
              }
              iVar14 = iVar14 + ((((int)puVar12 + -3) - (uint)CARRY1((byte)uVar13,(byte)uVar13)) -
                                iVar6);
              if (iVar14 <= iVar18 + -1) {
                do {
                  iVar14 = iVar14 + 1;
                  putc(0x20,stdout);
                } while (iVar14 != iVar18);
              }
              printf(" %s ",local_58);
              iVar6 = FUN_0010ce70(lVar2);
              iVar14 = iVar14 + iVar6;
              if (((DAT_001195d0 == 0) && ((*(byte *)(lVar2 + 0x24) & 2) != 0)) &&
                 (*(long *)(lVar2 + 0x18) != 0)) {
                pcVar8 = *(char **)(*(long *)(lVar2 + 0x18) + 8);
                if (DAT_001195cc == 0) {
                  pcVar9 = strrchr(pcVar8,0x2f);
                  if (pcVar9 != (char *)0x0) {
                    pcVar8 = pcVar9 + 1;
                  }
                }
                printf(" (%s)",pcVar8);
                sVar10 = strlen(pcVar8);
                iVar14 = iVar14 + 3 + (int)sVar10;
              }
            }
            else {
              printf("%6.6s %-19.19s",local_58,*(undefined8 *)(lVar2 + 0x10));
            }
          }
          uVar19 = uVar19 + uVar1;
          iVar18 = iVar18 + iVar4;
          if (local_70 <= uVar19) break;
        } while( true );
      }
      putchar(10);
      local_60 = local_60 + 1;
      if (uVar1 <= local_60) break;
    } while( true );
  }
LAB_00107070:
  free(__base);
  return;
code_r0x00106fee:
  printf("%6.6s ",local_58);
  uVar13 = *(uint *)(lVar2 + 0x130);
  pcVar8 = (char *)dcgettext("gprof","<cycle %d>",5);
  sprintf((char *)local_58,pcVar8,(ulong)uVar13);
  printf("%-19.19s",local_58);
  uVar19 = uVar19 + uVar1;
  iVar18 = iVar18 + iVar4;
  goto joined_r0x00106f52;
}

